Writing
Notes on building software, growing teams, and running a business.
Writings
AI & the future of software
- The AI Snake Won't Eat Its Own Tail The fear is that AI-generated content poisons future training data. The fear is wrong. The real problem is worse.
Architecture
- Microservices Aren't the Answer, Conway's Law Is Microservices solve an org problem, not a tech problem. Get the org shape wrong and you'll ship a distributed monolith with extra latency.
- Designing REST APIs That Don't Embarrass You Most REST API guides are checklists. This one is the four mistakes I see in every code review and how to avoid them.
- Your API Is the Product Stop thinking of APIs as a technical surface. They're a P&L. Every developer integrating you is a customer, and every breaking change is churn.
- The State of API Design REST won, GraphQL got expensive, gRPC stayed niche, and OpenAPI is the spec everyone agrees to ignore. Where we actually are.
- Architecting a Telehealth Video App Without Burning Money Build it on Twilio or LiveKit, not from scratch. The interesting work is everywhere else.
MVPs & building things
- What an MVP Actually Is An MVP is not your product with features stripped out. It's the smallest thing you can build to learn one specific thing.
- Build an eCommerce MVP in a Weekend Shopify, Stripe, a domain, and a product page. If you're scoping six months of engineering before you sell anything, you've already lost.
- How to Build an MVP Most MVP advice is a checklist. The real work is killing scope. Here's how I do it.
- What You Actually Need Before Building an MVP Not a spec. Not a roadmap. Not a Figma. One sentence — the riskiest assumption your business depends on.
- The Best Framework to Build an MVP Is the One You Already Know Founders ask which stack. The answer is whichever stack you can ship tonight. Stop optimizing for a refactor you'll never do.
- Re-reading The Lean Startup, Fifteen Years Later The book aged well. The cargo culting did not. What still holds up and what got butchered by every accelerator since.
- When Low-Code Is the Right Answer (and When It's a Trap) Low-code is a great prototype and a terrible product. The trick is knowing which phase you're in.
Engineering leadership
- TDD in Practice, Not in Theory Strict TDD is a religion. Tests-as-you-go is engineering. The distinction matters more than the dogma.
- Agile Without the Theater Two-week sprints, daily standups, and burndown charts are not Agile. They are ritual. Real Agile is shorter feedback loops, which most teams refuse to actually measure.
- What CI/CD Actually Costs (and What It Saves) The pitch is faster releases. The real value is fewer rollbacks. Here's the math, and where it breaks.
- Testing and Debugging — The Two Skills Senior Engineers Are Actually Paid For Writing code is the easy part. Debugging at 2am with no logs and an angry CEO is the job. Here's what I learned about both.
- Recruiting Engineers When Everyone Is Doing It Wrong Take-home tests, whiteboard coding, and culture fit interviews mostly don't work. Here's what does, after hiring hundreds at Mayven.
- What It Actually Costs to Hire a Team of Developers The salary is the smallest line item. Recruiting fees, ramp time, tooling, and turnover are where the budget actually goes.
Remote work
- Building Digital Products With a Remote Team Remote works. Remote-without-async-discipline doesn't. The difference is one specific habit most teams refuse to adopt.
- How to Actually Communicate With a Remote Engineering Team More meetings is the wrong answer. More writing is the right one. Here's the operating model that worked across 17 countries.