What problem does it solve?
Teams often over-engineer new platforms with premature microservices or under-engineer them with tangled monoliths, leading to vendor lock-in, fragile integrations, and costly rewrites. This Skill guides the design of an evolutionary modular monolith with strong logical boundaries from day one and physical boundaries kept as a later, optional step.
Core Features & Use Cases
- Strategic and tactical DDD: Classify subdomains as Core, Supporting, or Generic, draw context maps, and apply tactical depth in proportion to business value.
- Flat-by-aggregate module organization: Co-locate each business concept in one folder with technical layers expressed as file suffixes, validated by deterministic CI scripts.
- Vendor independence and resilience: Place every external system behind a port and Anti-Corruption Layer, use a transactional outbox for events, and wrap calls with timeouts, circuit breakers, and jittered retries.
- Architecture documentation: Produce a polished self-contained HTML architecture document with hand-drawn-style SVG diagrams from a provided template.
- Use Case: When designing a payables platform that syncs to a customer ERP, use this Skill to define bounded contexts, organize modules, decouple from the ERP vendor, and generate the full architecture document.
Quick Start
Ask the agent to design the architecture for a new platform or backend, for example: design the architecture of a billing platform that integrates with an external ERP.