Microservices: When You Really Need Them
Microservices are a tool for organizational and load scalability, not a goal in themselves.
Signs it is time
- Different parts evolve at different speeds with different teams;
- Load is uneven: one module needs ten times the resources;
- You need independent releases and fault isolation;
- You have mature infrastructure and observability.
When to wait
- The team is smaller than ten people;
- The domain is still being explored and changes often;
- Deployment automation and monitoring are missing.
A good compromise is a modular monolith with clear boundaries that can be split later.