# System Design

> Scalable system design patterns and trade-offs — an AI agent skill based on *System Design Interview* by Alex Xu.

Published 2026-02-23 · Updated 2026-08-17 · Architecture & Systems · Free and MIT-licensed
Canonical: https://skills.wondel.ai/skills/system-design/
Source: https://github.com/wondelai/skills/tree/main/system-design

**Install:** `npx skills add wondelai/skills/system-design --global`

## What is the System Design skill?

System Design turns Alex Xu’s System Design Interview into a free skill your AI coding agent can load mid-conversation. It runs the four-step method — scope the requirements, sketch a high-level design, deep-dive the risky component, state the trade-offs — with back-of-the-envelope QPS and storage math behind every number.

## Key concepts from System Design Interview your agent applies

- **Back-of-the-Envelope Estimation** — Quickly estimate QPS, storage, bandwidth, and memory needs to scope system requirements before diving into design.
- **Rate Limiting & Load Balancing** — Design rate limiters (token bucket, sliding window) and load balancing strategies for high-availability systems.
- **Cache & CDN Design** — Apply caching strategies (write-through, write-back, write-around) and CDN architectures for low-latency delivery.
- **Database Scaling** — Choose between vertical and horizontal scaling, implement sharding, and design for read replicas and write masters.
- **Message Queues & Async Processing** — Decouple components using message queues, implement pub/sub patterns, and design for eventual consistency.

## When to use System Design — and when not to

Reach for it when:

- You need a defensible answer to “will this hold ten thousand requests a second?” before you provision anything.
- A design review is coming and you want load, storage and bandwidth figures rather than another box diagram.
- You are adding a rate limiter, a cache tier or a queue and want the standard shape instead of an invention.
- You are preparing for system design interviews and want your agent to critique a design the way an interviewer would.

Reach for something else when:

- You need the internals behind the boxes — replication modes, isolation levels, partitioning — and Data-Intensive Apps goes deeper.
- The system already exists and falls over under real traffic; Release It! is about surviving, not sizing.
- You are structuring one application’s code rather than a fleet of components — use Clean Architecture.
- The slow part is page delivery to end users, which is High Perf Browser’s territory, not capacity planning.

## About Alex Xu

Former Twitter/Apple engineer, bestselling system design author. Alex Xu is a software engineer and author who has worked at Twitter, Apple, and Oracle. His System Design Interview books have become the go-to resource for understanding large-scale distributed systems, with millions of copies sold worldwide.
The book: https://openlibrary.org/books/OL37923893M/System_Design_Interview_–_An_Insider's_Guide

## Example prompts

- Design a URL shortener that handles 100M daily active users using system-design skill _(System design)_
- Estimate the storage and QPS requirements for our notification system using system-design skill _(Capacity planning)_
- Design a rate limiting system for our public API using system-design skill _(API design)_
- Architect a real-time chat system with message persistence using system-design skill _(Distributed systems)_

## Frequently asked questions

### How do I install the System Design skill?

Run `npx skills add wondelai/skills/system-design --global`. It takes about 30 seconds and needs no account. The System Design skill then works in Claude, Claude Code, Claude Cowork, Codex, Cursor, OpenClaw and Hermes Agent — anything that reads the open agentskills.io format — and your agent loads it on its own when a task calls for it. It is free and MIT-licensed, and the source is at https://github.com/wondelai/skills.

### Which book is the System Design skill based on?

It packages *System Design Interview* by Alex Xu — former Twitter/Apple engineer, bestselling system design author. The skill distils the book's method into instructions your agent follows while it works, covering back-of-the-envelope estimation, rate limiting & load balancing and cache & cdn design. It sits in the Architecture & Systems part of the library.

### It is based on an interview book. Is it useful for real systems?

For the early sketch, very much; for the last mile, less so. The value is a repeatable method — scope, do the arithmetic, design the high level, deep-dive the risky part, name the trade-offs — plus canonical designs for rate limiters, key-value stores, notification systems and news feeds. What it compresses is operational reality: your provider’s quirks, cost, and the failure behaviour that Release It! covers.

### What is the back-of-the-envelope method it uses?

Convert usage into rates and volumes before drawing anything. Average QPS is daily active users times actions per user per day, divided by 86,400 seconds; peak is commonly two to five times that. Storage is records per day times record size times retention. Then compare against what one machine already does. The result is usually subtractive — the numbers show you do not need sharding, a mesh or multiple regions yet.

### When should I use this instead of Data-Intensive Apps?

Use it when the deliverable is a design document and a number, and you are still deciding whether a component should exist at all. Reach for Kleppmann’s skill afterwards, once you have committed to a datastore or a replication topology and need to know exactly what it guarantees. In sequence: size it here, justify the internals there. Installing both is common, and the order matters more than the choice.

### Will it over-engineer my app?

It can, if all you ask for is a design. Every canonical chapter targets internet scale, so an unqualified “design my notification system” tends to come back with queues, shards and multi-region failover. The estimation step is the antidote: give it your real active-user and retention numbers and ask explicitly which techniques you do not need yet. For most new apps the honest answer is one indexed database and a cache.

## Related

- All Architecture & Systems skills: https://skills.wondel.ai/skills/architecture/
- Clean Architecture: https://skills.wondel.ai/skills/clean-architecture/
- Domain-Driven Design: https://skills.wondel.ai/skills/domain-driven-design/
- Data-Intensive Apps: https://skills.wondel.ai/skills/ddia-systems/
- Release It!: https://skills.wondel.ai/skills/release-it/
- High Perf Browser: https://skills.wondel.ai/skills/high-perf-browser/

