System Design

Design systems, services, and architectures. Trigger with "design a system for", "how should we architect", "system design for", "what's the right architecture for", or when the user needs help with API design, data modeling, or service boundaries.

nota-america Updated

File contents

System Design

Help design systems and evaluate architectural decisions.

Framework

1. Requirements Gathering

  • Functional requirements (what it does)
  • Non-functional requirements (scale, latency, availability, cost)
  • Constraints (team size, timeline, existing tech stack)

2. High-Level Design

  • Component diagram
  • Data flow
  • API contracts
  • Storage choices

3. Deep Dive

  • Data model design
  • API endpoint design (REST, GraphQL, gRPC)
  • Caching strategy
  • Queue/event design
  • Error handling and retry logic

4. Scale and Reliability

  • Load estimation
  • Horizontal vs. vertical scaling
  • Failover and redundancy
  • Monitoring and alerting

5. Trade-off Analysis

  • Every decision has trade-offs. Make them explicit.
  • Consider: complexity, cost, team familiarity, time to market, maintainability

Output

Produce clear, structured design documents with diagrams (ASCII or described), explicit assumptions, and trade-off analysis. Always identify what you'd revisit as the system grows.

nota-america/forgecat-agent-profiles/tree/main/profiles/anthropics/knowledge-work-plugins/anthropics_knowledge-work-plugins_engineering/for-codex/.agents/skills/system-design commit 54583f5a76

Frequently asked questions

npx skillmds@latest add nota-america/system-design