Technical blog

Engineering Thinking

Anyone can write code. Great engineers make good engineering decisions.

Latest writing

Do What You Couldn't Do Before

If AI only makes you faster at work you already knew how to do, you've bought speed, not reach. The interesting work is what you assumed you couldn't do.

3 min readai-assisted-engineeringengineering-thinkingtooling

The Meeting That Runs Itself

I had a coding-agent session open for each of my projects and was coordinating their discussion by hand. Handing that job to the agents themselves taught me something about building with AI.

5 min readai-assisted-engineeringagentsorchestration

Model the Business, Not the Implementation

Optional values are useful when absence exists in the business. They become dangerous when they hide workflow state, API awkwardness, database looseness, or compiler discomfort.

4 min readengineering-thinkingtype-systemsdomain-modeling

Topics

agentsai-assisted-engineeringclaude-codedomain-modelingengineering-thinkingmcporchestrationtoolingtype-systems

About

This site is designed as a senior engineer's field journal: fewer hot takes, more decision records, failure analysis, architecture notes, and implementation writeups.

Posts should be useful to engineers evaluating similar tradeoffs, so the default format favors context, constraints, concrete examples, and what changed after shipping.

5published drafts to replace
9initial topic lanes