FAQ
When should I use microservices? +
When you have multiple teams that need independent deploy cadences, subsystems with radically different scale or technology requirements, the ops maturity to run distributed systems (observability, service mesh, on-call rotations), and the distributed-complexity cost is genuinely smaller than the coordination cost of a single codebase. For most teams under ~50 engineers, the answer is "not yet."
What is a modular monolith? +
A single deployable application with strict internal module boundaries — separate domain models, clear public/private APIs between modules, no shared database tables across modules. Captures most of the architectural discipline of microservices without the distributed-systems tax. For most teams in 2026, this is the right starting point and often the right ending point.
What's the biggest mistake with microservices? +
Adopting them too early. Distributed tracing, eventual consistency, deploy orchestration, network resilience, on-call complexity — all paid in operational and cognitive overhead. The second mistake: extracting microservices that share a database. If two services share a database, they share a deployment, regardless of the architecture diagram.
Can I migrate from monolith to microservices later? +
Yes, and a modular monolith makes it far easier. Standard pattern: build a modular monolith with strict module boundaries, identify modules whose scaling or deploy cadence diverges, peel them off via the strangler-fig pattern. Most successful microservice migrations started as monoliths with clear module boundaries before extraction.
How many engineers do you need for microservices? +
Loose heuristic: each microservice should have at least one team owning it end-to-end (code, deploy, on-call). Fewer engineers than 2x your service count means you're spreading too thin. The meaningful threshold is around 30–50 engineers and 3–5 teams with genuinely different release cadences.
Does this tool work offline? +
Yes — every question, score, and recommendation is computed in your browser using static JavaScript. No data is sent to any server. Your inputs are not stored or transmitted anywhere.