Articles
Articles about building software.
I write about technical decisions, product work, teams, and what I learn while doing the work.
Start here
Three articles to start with.
How to Write a Technical Spec That People Actually Read
Write the spec early enough for someone to disagree with it. Its job is to expose the important choices before implementation makes them expensive.
How to Run an Architecture Review That Actually Helps
A useful review gives a team a better decision and a clear owner for the risks, not another meeting to get through.
Earn Complexity
Before adding a queue, service, abstraction, or process, ask which present problem it solves and what it will cost the team to keep.
All articles
11 articles, newest first.
2026
Developer Advocacy Should Ship Working Software
A demo can hide the difficult parts. Developer-facing teams learn more and teach more honestly when they build and maintain the example themselves.
Every Technical Role Is Now Product-Accountable
As AI shortens the path from idea to first draft, technical roles have less room to stay detached from the customer problem and the outcome.
The Technical Leader in an AI-Accelerated Team
Faster first drafts change a leader’s job less than it first appears. The work is still to clarify the problem, test the trade-offs, and help the team act.
How to Run an Architecture Review That Actually Helps
A useful review gives a team a better decision and a clear owner for the risks, not another meeting to get through.
Make Decisions Legible
A decision is easier to carry out when people can see the context, trade-off, and consequence behind it, not just the final answer.
The Delivery Triangle
A missed date usually has a story behind it: the scope moved, a dependency stayed unresolved, or the team was not solving the same problem.
Earn Complexity
Before adding a queue, service, abstraction, or process, ask which present problem it solves and what it will cost the team to keep.
2025
Architecture Decision Records as Team Communication
An ADR is most useful before a decision is made: it gives the people affected by a choice one place to challenge it, understand it, and revisit it later.
Optimize for Reversibility
Some choices are cheap to revisit; others lock in cost, data, or organizational habits. Treating them alike is how teams get stuck.
How to Write a Technical Spec That People Actually Read
Write the spec early enough for someone to disagree with it. Its job is to expose the important choices before implementation makes them expensive.
Signal vs. Noise in Engineering Metrics
A dashboard can be busy and still leave a team guessing. This piece looks at the measures that change a decision, not merely report activity.