The same expensive mistakes, over and over. A handful I’ll die on:
ArchitectureYour architecture problem is usually a naming problem.
Muddled words make muddled boundaries. Get the language right and the diagram writes itself; get it wrong and no amount of microservices will save you.
AIAdding AI is not a strategy.
Most “AI features” are a demo in a trench coat — dazzling in the meeting, unmaintainable by Friday. I start from the job to be done and the evals. The model is the easy part; the retrieval, guardrails and fallbacks are the work.
ToolingThe unglamorous work is the leverage.
Test harnesses, CI, internal tooling — they never demo well. They just quietly make a team twice as fast and far less afraid to ship. I build the boring infrastructure that pays for itself in a month.
ScaleYou don’t have a scale problem yet.
Most systems get re-architected for a load they’ll never see, at the cost of the shipping they need today. Design for one more order of magnitude, not six. Buy the scale you need with the money you have.
TeamsAdding people to a late project makes it later.
The bottleneck is rarely hands; it’s unclear ownership and slow feedback loops. I fix the loop before I’d ever reach for more headcount.