Technical
Build vs Buy Revisited: Six Months of Choices
Every time I add a feature I face the build-vs-buy decision. Six months ago I biased toward buying. Pay someone to solve the problem and move on. After actually running a stack in production, I have shifted. Here is the newer, more honest framework I use.
The Original Bias
The usual argument for buying is focus. Do not reinvent wheels. Pay the SaaS, ship the feature, get back to what you are good at. I still think that is right for a lot of cases. But not as many as I thought.
What Changed
Three things shifted my view:
- AI makes building cheaper: what was a week of work is now a day
- SaaS subscriptions accumulate: each one feels small, the sum is painful
- Vendor risk is real: three of the tools I depended on raised prices by 3x this year
The net effect is that "build" is now cheaper and "buy" is more expensive than the math I used to do.
The Framework I Use Now
Is the problem your core competency?
YES -> Build
Is the problem commoditized and widely solved?
YES and SaaS is cheap -> Buy
YES and SaaS is expensive -> Build (AI makes it easy)
Is the problem bespoke and deep?
YES -> Build or pay a specialist, never SaaSThat framework leans toward building more often than my old one. The cases where buying still wins cleanly are commoditized problems with cheap SaaS (Stripe for payments, Cloudflare for DNS). For anything in the "moderately customized" middle, building is often the better long-term play.
Concrete Recent Choices
- Transactional email: I build on SES, not Mailchimp. Much cheaper, fully controlled.
- CMS: I build on DynamoDB, not Contentful. Saves $200/month per site.
- Auth: I buy (Cognito, for most projects). Not worth the security risk of rolling my own.
- Payment processing: I buy (Stripe). Regulatory overhead is too high to build.
- Analytics: I build simple event logging, not Segment. 10 lines of code replace $100/month.
The Hidden Cost of Buying
Every SaaS I buy is a vendor relationship. That means onboarding, SOC 2 reviews, key rotation, contract renewals, and the occasional price shock. Those costs do not show up in the monthly bill but they are real. Building has its own costs (maintenance, security) but at least they are on my side of the fence and under my control.
Read the AWS Well-Architected pillars for a rigorous view on tradeoffs.
RELATED READING
The Consulting Shift I Am Making In Year Two
After a year of writing and building, my consulting practice is changing shape. Shorter engagements. Sharper outcomes.
ReadThe Frontend Shift: Shipping Less JavaScript In Year Two
A year ago I reached for Next.js for everything. This year I often reach for nothing.
ReadThe Serverless Lesson I Would Write On A Sticky Note
After a year of shipping serverless projects, one rule explains most of the wins and all of the losses.
Read