Client wanted microservices. I recommended a modular monolith instead.
Their situation:
- Team of 4 developers
- Single product, single domain
- 500 daily active users
- No clear service boundaries yet
Microservices would have meant:
- 4 engineers managing 8+ services
- Network latency between every call
- Distributed tracing complexity
- Kubernetes overhead for no benefit
We built a modular monolith:
- Clear module boundaries in code
- Separate database schemas per module
- Internal API contracts between modules
- One deployment, one container
18 months later, they extracted their first service when they actually needed to scale it independently.
Architecture should match your team size and actual problems.
I have just installed
> Docker
> Postgresql
> MySQL
> SQL Server
> Node
> Editors
> And few apps like zoom, teams, postman
and see๐
Your startup doesn't need Kubernetes. You need 2 EC2 instances and a load balancer, but your CTO read a Netflix blog post and now you're debugging CrashLoopBackOff at 3 AM.