When should you not use microservices?
Assesses fundamental understanding of Microservices conventions, runtime behavior, and memory/performance considerations.
Hiring managers look for precision, avoidance of ambiguous jargon, and ability to explain trade-offs under real production conditions.
Avoid microservices when:
- The domain is still being explored. Wrong boundaries are far more expensive to move than within a monolith.
- The team is small. Each service multiplies deployment, monitoring, on-call and security effort; a handful of engineers cannot operate dozens of services well.
- You lack operational maturity: automated CI/CD, centralized logging, metrics, tracing and infrastructure as code.
- The workload is low scale and the business needs fast iteration, where a monolith ships faster.
- Strong transactional consistency is central and distribution would only add complexity.
- There is no clear independent scaling or ownership driver.
A modular monolith with clear internal boundaries gives most of the maintainability benefit at a fraction of the cost, and lets you extract services later along proven seams. The rule of thumb is to earn distribution: adopt it only when a concrete, measurable problem makes it necessary.
Candidate Response Strategy & Interview Tips
- Start with a concise one-sentence summary: Deliver a direct, confident answer first before expanding into nuances.
- Demonstrate real-world trade-offs: Discuss where this approach excels and when you would avoid it in production systems.
- Discuss complexity & edge cases: Proactively explain time/space complexity or boundary conditions (null values, scale limits).
- Prepare for interviewer follow-ups: Technical hiring panels frequently probe deeper into concurrency, backward compatibility, or alternative libraries.