Design and evaluate system architecture including service boundaries, data models, APIs, and infrastructure topology.
---
name: architecture-design
description: When the user needs to design or evaluate system architecture - service boundaries, data models, API contracts, infrastructure topology, database selection, or dependency analysis. Also activate for "design the system", "how should I architect this", "monolith vs microservices", or architecture decision records.
related: [tech-stack-eval, security-review, code-review]
reads: [startup-context]
---
# Architecture Design
## When to Use
- Starting a new product or major feature that needs system design
- Choosing between monolith, modular monolith, microservices, or event-driven patterns
- Selecting a database (SQL vs NoSQL vs specialized) for a new project
- Analyzing dependencies for circular references, coupling issues, or outdated packages
- Creating architecture diagrams (Mermaid, PlantUML, ASCII) for documentation or review
- Writing Architecture Decision Records (ADRs) for technical choices
- Evaluating scalability bottlenecks or planning capacity
## Context Required
From `startup-context`: product description, tech stack, current state (prototype/beta/scaling), team size, expected scale (users, requests/sec, data volume). If missing, ask:
- What does this system need to do? (core use cases)
- What scale are you targeting? (users, requests/sec, data size)
- What is your team size and backend experience level?
- Are there hard constraints? (compliance, latency, budget, existing infra)
… load the full skill through Skill Me