ai/opencode/tech-team/skills/systems-design-depth/SKILL.md
Use when designing scalable systems, evaluating consistency models, planning state management, making architectural decisions, or when trade-offs around coupling, failure isolation, and reversibility need explicit reasoning before implementation.
npx skillsauth add akshay-na/dotfiles systems-design-depthInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Design scalable, evolvable systems with explicit reasoning about state, consistency, and failure. Every architectural decision should be deliberate, documented, and reversible where possible.
| Competency | Key Question | |---|---| | State transitions | Where does state live and how does it change? | | Consistency trade-offs | Do we need strong or eventual? What breaks if stale? | | Reversibility | Can this decision be undone without rewriting? | | Coupling | What changes if this component changes? | | Scaling boundaries | What breaks first at 10x load? | | Distributed simplicity | Can a simpler model achieve the same goal? |
Before implementing any significant system change:
Stop and reassess if you observe:
Design Note Template:
## Context
What problem are we solving? Why now?
## State
Where does state live? Who owns writes? Who reads?
## Consistency
Strong or eventual? What is the staleness tolerance?
## Failure Modes
What fails? What degrades gracefully? What is unrecoverable?
## Scaling Limits
What breaks at 10x? At 100x? What is the first bottleneck?
## Trade-offs
What did we choose? What did we reject? Why?
## Reversibility
Can we undo this? What is the cost of changing course?
| Mistake | Fix | |---|---| | Choosing microservices by default | Start monolithic, extract when boundaries stabilize | | Ignoring consistency requirements | Ask "what happens if data is stale?" for every read path | | Coupling through shared databases | Define ownership boundaries; use APIs at service edges | | No failure mode analysis | List what breaks before writing code | | Premature scaling optimization | Measure first, scale what is actually bottlenecked |
development
Discovery + naming convention reference for typed dev/SME/QA/devops team members in any workspace folder. Primary consumer: `tech-lead` (org-tier).
devops
Automated task classification, agent selection, and state tracking. Use when routing tasks to agents, selecting pipelines, or managing task state.
tools
CTO/tech-lead helper — split work into disjoint shard briefs with caps (instance_cap, partition_basis, determinism keys).
testing
Deterministic aggregation of shard results — lexical ordering + schema-checked bundle merges.