Writing
Notes on software architecture, production AI, and engineering.
-
Your consumer’s headroom is a staleness budget
Moving a call onto a log does not remove the coupling between two services. It moves the coupling into time, and the consumer’s spare capacity decides how much time. Take a chat app, a…
-
Your Retry Policy Is a Capacity Limit You Cannot See
Retries and hedges cut tail latency on a normal day. Each one also sets a load above which the service cannot recover from a short stall, and no dashboard shows it. Take two copies…
-
Why Your Eval Picks the Model That Guesses.
Where confident guessing comes from, and the part of it you choose. Suppose you are choosing a model for an assistant that answers questions from your team’s engineering documentation and runbooks. You have two…
-
Calibration Does Not Ship with the Model: Early Evidence from Jev
Early independent tests of a new decision model, and what they show about calibration and thresholds in production. A GitHub issue arrives: after upgrading to v3.2, login occasionally returns 502 when the session expires.…
-
Why a Better LLM Can Make Your AI Product Worse
Here is a failure mode worth testing for before your next model migration. An agent searches whenever it is unsure. Nobody wrote that rule down. The prompt and a handful of examples shape that…
-
When Two Services Cannot Deploy Without Each Other
Repair it, merge it, or write down why you are doing neither. A service boundary should keep paying rent. The release runbook says deploy A, wait for validation, deploy B, verify together. It has…
-
Five Signals a Service Boundary Has Stopped Paying Rent
And what each one actually points at, which is rarely a merge. Picture two services, one team, separate pipelines for three years. Latency is fine. Neither is a hub. They fail independently, mostly. Then…






