What problem does it solve?
Designs clear, pragmatic software architectures that balance business needs, technical constraints, and team capabilities to avoid overengineering, costly rewrites, and unclear ownership of system responsibilities.
Core Features & Use Cases
- Domain modeling & bounded contexts: Identify aggregates, domain events, and context maps to reduce coupling and clarify responsibilities.
- Architecture selection & patterns: Recommend modular monoliths, microservices, event-driven systems, CQRS, or hybrid approaches with trade-offs tailored to team size and operational needs.
- Trade-off analysis & ADRs: Produce Architecture Decision Records that document options, rationale, consequences, and reversibility for future maintainers.
- Use Case: When migrating a monolith, use this Skill to map bounded contexts, evaluate service split points, compare consistency vs availability implications, and produce a staged migration plan.
Quick Start
Draft an ADR that evaluates splitting the payments module into a microservice versus keeping it in a modular monolith, listing options, trade-offs, recommended approach, and a migration rollout plan.