Steven Stuart
Software Architect
Software architect with 15 years of experience building complex distributed systems.
Articles
The API Gateway Shouldn't Know Your Business
Business rules end up in the API gateway because it's the easiest place to apply a rule to every request, and there they lose their owner, miss traffic that skips the gateway, and leave the domain's tests. Keep a rule in the gateway only if the gateway team could change it correctly on its own, and admit anything else only as debt with an owner and a removal date.
Your Reads Should Not Design Your Writes
API updates that send a wide body can't reliably tell an omitted field from a cleared one, whatever the HTTP method, and patch formats push the fix onto every client. Normalizing the write surface avoids both, keeping reads as composed views and writes as small resources any client can replace whole.
Study Guides
AAA Cycle: Align-Agree-Apply
A guiding discipline for architects that works inside any SDLC methodology: align with the need through human connection, agree on how to meet it, apply what was agreed, and go back to an earlier phase when reality breaks the agreement.
AAA Cycle: Phase 1 - Align with the Need
The first AAA phase: stakeholder discovery, requirements and architectural characteristics, constraints and risks, a Go, Pivot, or No-Go call built from an effort estimate and a risk tier, the project charter, and the test that alignment is real before moving to Agree.
AAA Cycle: Phase 2 - Agree to the Plan
The second AAA phase: architecture design and ADRs, validating the design against its top quality attributes, documentation matched to risk, proofs of concept, quality strategy and SLOs, planning to an appetite, and reaching real agreement among stakeholders and with the team.
Case Studies
When Discipline Makes AI a Force Multiplier
Rebuilding an undocumented legacy application in four months by applying Anthropic's 4D Framework and Shaped Kanban to every AI interaction
When Third-Party Integration Meets Domain Boundaries
Embedding Discord concerns within domains instead of extracting them to a dedicated service
When a Trusted Dependency Becomes a Silent Killer
A silent deadlock in a trusted SDK bypassed every test we had, and plan continuation bias cost me two days I didn't need to lose