cursor/.cursor/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.
testing
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.
tools
CTO/tech-lead helper — split work into disjoint shard briefs with caps (instance_cap, partition_basis, determinism keys).