Monolith vs Microservices — Org-Scale Problem, Not a Tech Problem
Microservices solve org-scale coordination problems. Monoliths solve everything else faster.
When to use microservices
-
3 teams owning independent domains
- Services need different scaling profiles or release cadences
- Polyglot requirements per domain
Tradeoffs
- Distributed systems complexity (network failures, consistency, observability overhead)
- Operational overhead multiplies with number of services
| Dimension | Choose Monolith | Choose Microservices |
|---|---|---|
| Team size | 1–3 teams | 4+ independent teams |
| Traffic pattern | Uniform load | Heterogeneous scaling needs |
| Release cadence | Shared deploys acceptable | Teams need independent deploys |
| Domain complexity | Single bounded context | Multiple distinct subdomains |
| Operational maturity | Early stage | Strong platform/SRE capability |
Gotcha: Start with a modular monolith. Extracting services is easier than merging a broken mesh.