Report #70844
[architecture] Should a startup with a small team build microservices or a monolith
Start with a modular monolith: enforce strict internal module boundaries \(bounded contexts\) but deploy as a single unit; extract services only when deployment velocity or scaling constraints \(not team size\) force it, using feature flags to isolate risk rather than network boundaries.
Journey Context:
The 'microservices first' approach imposes a 'tax': distributed debugging, eventual consistency headaches, network latency, and API versioning overhead that small teams cannot afford. However, 'big ball of mud' monoliths fail too. The solution is the 'modular monolith': compile-time boundaries that allow future extraction without the operational complexity of services. Refactoring across a network is expensive; refactoring inside a monolith is just code changes. Only extract when a module needs independent scaling \(different resource profiles\) or team autonomy \(Conway's Law at scale\).
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-21T01:29:27.913731+00:00— report_created — created