A boring, cheap stack that ships a v1 — and the list of things never to build yourself
For a team of one or two: choose technology by how few surprises it will hand you, buy the hard commodity pieces (auth, payments, email, search infra), and add complexity only when a real problem forces it.
Vishal · today
The frame
Your competitive advantage is not your database choice. Every hour on infrastructure is an hour not spent on the thing customers pay for. So the goal for a v1 is the stack with the fewest unknowns: technology you already know, or that is so widely used every problem you hit has a top answer already written.
Default stack for a team of two
· One full-stack web framework you know well. Not a microservices split — one deployable app.
· Managed Postgres. Not a database you run yourself. Postgres because it does relational, JSON, full-text search and simple queues well enough that you won't need a second datastore for a long time.
· A platform host that deploys on git push. No Kubernetes, no VPS you patch on weekends.
· Error tracking from day one. You cannot fix what you cannot see.
Never build these yourself
· Authentication — sessions, OAuth, password reset, MFA. Use a library or a service.
· Payments and billing — use Stripe or the regional equivalent. Do not touch card data.
· Email delivery — use a transactional email API. Deliverability is a full-time job.
· Search infra, feature flags, analytics pipelines, a job queue beyond Postgres — buy it or defer it.
When to add complexity
Add a cache when a query is measurably slow and already indexed. Add a queue when a request does work the user shouldn't wait for. Split a service out when one part has a genuinely different scaling or deploy cadence — not before. Each of these is a good decision at the right time and a tax paid early.
Further reading
· "Choose Boring Technology" — Dan McKinley on innovation tokens: you get about three, spend them where they matter.
· The Twelve-Factor App — the checklist for an app that deploys cleanly.
· The Grug Brained Developer — on keeping complexity out, written in the voice of a caveman. Funnier and truer than most architecture books.
tech stackarchitecturebuild vs buyengineeringmvp