What problem does it solve? Choosing between monoliths, microservices, serverless, databases, and backend runtimes is high-stakes and often driven by hype rather than evidence. This Skill provides a structured decision framework grounded in practitioner literature (Fowler, Newman, Kleppmann, Richardson) so teams make reversible, context-appropriate architecture choices. ## Core Features & Use Cases - Architectural style decisions: Compare modular monolith, microservices, serverless, and event-driven architectures with explicit prerequisites, failure modes, and migration paths like Strangler Fig. - Backend runtime selection: Match workloads to Go, Rust, Java/Kotlin, TypeScript/Node, Python, or Elixir based on concurrency model, ecosystem, and hiring constraints. - Data layer guidance: Select databases (PostgreSQL, MongoDB, DynamoDB, Cassandra), caching (Redis), and evaluate CQRS and event sourcing trade-offs. - Use Case: A 15-person startup debating microservices can get a recommendation to start with a modular monolith, the boundary conditions under which that holds, and the exact triggers for later service extraction. ## Quick Start Ask the assistant whether you should use microservices or a monolith for your team size and domain, and request the trade-offs and migration path.