system-design

Guide system design brainstorming and critique with tradeoffs and failure-mode analysis.

1|Updated Jul 31, 2023
One-click install
npx skills add https://github.com/austintheriot/dotfiles --skill system-design-austintheriot
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: system-design
Source: https://github.com/austintheriot/dotfiles/tree/main/.claude/skills/system-design
Command: npx skills add https://github.com/austintheriot/dotfiles --skill system-design-austintheriot

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill helps you create a solid system design or pressure-test an existing one by exploring architecture options, articulating tradeoffs, and identifying failure modes from a distributed-systems and DDIA lens.

Core Features & Use Cases

  • Brainstorm mode (designing from scratch): Walk through the design space for a new service, API, or data flow, then converge on a clear recommendation.
  • Critique mode (reviewing a proposed design): Systematically review a design doc for correctness, missing requirements, risky assumptions, idempotency, failure handling, and operational gaps.
  • Opinionated guidance (non-code): Produces a structured design doc or a severity-ranked critique report, using your local distributed-systems principles and system-design patterns as references.

Quick Start

Tell the AI: "Review this design: [paste your proposal/requirements/diagram] and critique it from a DDIA and distributed-systems perspective."

Frequently Asked Questions about system-design

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I brainstorm architecture for a new distributed system?

To brainstorm distributed system architecture, you explore design options for new services and data flows, articulate tradeoffs, and converge on a clear recommendation without writing code. This process uses distributed-systems principles to evaluate storage strategies and consistency guarantees.

What is the best way to critique a system design proposal?

The best way to critique a system design proposal is to systematically review it for correctness, missing requirements, risky assumptions, idempotency, and failure handling. This yields a severity-ranked findings report highlighting operational gaps and failure modes.

How does failure mode analysis work when reviewing API design?

Failure mode analysis in API design scrutinizes proposed data flows and consistency models to identify operational gaps and risky assumptions. It applies distributed-systems principles to produce a severity-ranked critique of the architecture's resilience.

Can I use distributed-systems principles to plan consistency guarantees?

Yes, you can use distributed-systems principles to plan consistency guarantees when selecting storage strategies and defining API surfaces. This ensures your architecture explicitly addresses tradeoffs and failure handling in the data flow.

What are the limitations of using a non-code system design approach?

A non-code system design approach limits output to structured design documents and severity-ranked critique reports rather than executable implementations. It focuses entirely on evaluating architecture tradeoffs and failure modes without generating actual code.

Do I need to provide a diagram for an architecture review?

You should provide a diagram or detailed text for an architecture review to enable a thorough second-pass evaluation of your proposal. This allows the review to systematically assess correctness, idempotency, and failure handling.