Skip to content

Master System Design

Learn by building
systems that break.

Interactive System Design education, from how a request reaches your server to how an agent recovers from a failed tool call. Understand distributed systems by operating them.

Completely free. No account required.
Your progress stays in this browser.

Live simulationcache-aside · 8K req/s
Users
API
Redis
PostgreSQL
Throughput8Kreq/s
p99112ms
Errors0.06%
Cache hit91%

Learn

Read less, operate more

Every concept arrives attached to a system you can run. The explanation is there to make sense of what you are about to do, not to substitute for it.

Experiment

Turn the knobs

Replicas, cache TTL, connection pools, worker counts, traffic. Every control changes the simulation, and the numbers move because the model moved — not because a script said so.

Break systems

Kill things and watch

Take down Redis and watch the database absorb eleven times its load. Restore it and watch it come back empty. Failure modes are much easier to remember once you have caused one.

Build architectures

Design on an open canvas

Drop components, wire them together, push traffic through, and trace a single request across the graph. Save what you build and come back to it.

Design real products

Missions with real constraints

Ten billion redirects a month, p99 under 100ms, four nines of availability. No single correct answer — your architecture is evaluated on its trade-offs.

Modern systems

Not just interview trivia

The curriculum runs from DNS through sharding and on to LLM request architecture, retrieval, and agent loops — the systems people are actually building now.

The loop

Understanding follows from consequences.

You will not be told that caching reduces database load. You will be given an overloaded database, asked what you would change, and then handed the tools to find out whether you were right.

  1. 01

    Predict

    State what you think will happen before anything runs.

  2. 02

    Simulate

    Change the system and watch every metric respond.

  3. 03

    Break

    Remove the thing keeping it alive and see what it was doing.

  4. 04

    Defend

    Hold a hard target while traffic grows underneath you.

Start with caching.

An overloaded database, 8,000 requests per second, and a question about what you would change. Twenty-five minutes.