Distributed system architecture rendered as interconnected servers, databases and network links
Free · No sign-up · Beginner to advanced

System Design Tutorial & Interview Prep

Learn system design from first principles and finish ready for the interview. 38 lessons and 71 deep-dive questions across 11 tracks - estimation, databases, caching, load balancing, distributed systems, messaging and 7 full case studies. With 39 interactive diagrams and simulators, because some of this cannot be learned from prose.

Lessons
38
Deep-dive questions
71
Interactive visuals
39
Case studies
7
0%complete

Lessons done

0/38

Questions mastered

0/710%

Day streak

0

Remaining

38

Progress is saved in this browser only - no account, no tracking, nothing leaves your device.

Eleven tracks, one path

Ordered so each track builds on the last - primitives, then components, then theory, then whole systems. Skip ahead freely; every lesson stands on its own.

Foundations & First Principles

3 lessons · 11 questions

What a system design interview actually measures, the vocabulary, and the back-of-envelope arithmetic everything else rests on.

Start track

Networking & API Design

3 lessons · 8 questions

DNS, TCP vs UDP, HTTP/2 and 3, TLS, REST vs gRPC vs GraphQL, and how to push data to a client in real time.

Start track

Databases & Storage

4 lessons · 9 questions

Indexes, B-trees vs LSM trees, transactions and isolation levels, SQL vs NoSQL, sharding and object storage.

Start track

Caching & Content Delivery

2 lessons · 5 questions

Cache-aside vs write-through, eviction policies, invalidation, stampedes, CDNs and the hot-key problem.

Start track

Scaling & Load Balancing

3 lessons · 4 questions

Vertical vs horizontal growth, load-balancing algorithms, statelessness, autoscaling and consistent hashing.

Start track

Distributed Systems Theory

4 lessons · 6 questions

CAP and PACELC, replication, consensus and leader election, clocks and ordering, idempotency and exactly-once.

Start track

Messaging, Queues & Streams

2 lessons · 2 questions

Queues vs logs, Kafka partitions and consumer groups, delivery semantics, backpressure and dead-letter design.

Start track

Architecture Patterns

3 lessons · 4 questions

Monolith vs microservices, API gateways, saga and outbox, CQRS and event sourcing, and multi-tenancy.

Start track

Reliability, Security & Observability

4 lessons · 5 questions

SLOs and error budgets, timeouts and circuit breakers, rate limiting, auth, and the three pillars of observability.

Start track

Design Case Studies

7 lessons · 14 questions

Full worked designs - URL shortener, news feed, chat, rate limiter, video streaming, ride hailing and search.

Start track

The Interview Playbook

3 lessons · 3 questions

The 45-minute script, whiteboard technique, how you are levelled, and recovering when you get stuck.

Start track

Built to be understood, not memorised

You cannot memorise system design - there are too many systems. You can learn the components, the arithmetic and the trade-offs.

Concepts you can touch, not just read

39 interactive diagrams and live simulators built into the lessons. Break a server and watch least-connections send it more traffic. Add a node to a hash ring and see exactly which keys move. Reproduce the fixed-window rate-limit bug yourself.

Numbers before boxes

Every design starts with arithmetic. Capacity calculators, latency ladders and availability composition are built in, so you learn to reach an order of magnitude in two minutes and then use it to rule designs out.

Beginner to advanced, in order

Starts at 'what is a load balancer' and ends at consensus, sagas and exabyte-scale video delivery. Each track builds on the last, and every lesson stands alone if you need to skip ahead.

A mock interview that mirrors the real thing

A full 45-minute design session with a six-phase timer that pushes you through clarify, estimate, design and deep dive - plus a rapid recall drill and an honest self-assessment checklist.

The full curriculum

38 lessons across 11 tracks. Search by topic, company, or the exact question you were asked.

Foundations & First Principles

What a system design interview actually measures, the vocabulary, and the back-of-envelope arithmetic everything else rests on.

Networking & API Design

DNS, TCP vs UDP, HTTP/2 and 3, TLS, REST vs gRPC vs GraphQL, and how to push data to a client in real time.

Databases & Storage

Indexes, B-trees vs LSM trees, transactions and isolation levels, SQL vs NoSQL, sharding and object storage.

Scaling & Load Balancing

Vertical vs horizontal growth, load-balancing algorithms, statelessness, autoscaling and consistent hashing.

Distributed Systems Theory

CAP and PACELC, replication, consensus and leader election, clocks and ordering, idempotency and exactly-once.

Architecture Patterns

Monolith vs microservices, API gateways, saga and outbox, CQRS and event sourcing, and multi-tenancy.

Reliability, Security & Observability

SLOs and error budgets, timeouts and circuit breakers, rate limiting, auth, and the three pillars of observability.

Design Case Studies

Full worked designs - URL shortener, news feed, chat, rate limiter, video streaming, ride hailing and search.

Lesson 29

Design a URL Shortener (TinyURL / bit.ly)

The classic warm-up question. Deceptively simple functionally, and a perfect vehicle for ID generation, extreme read/write skew and cache design.

Intermediate2 questions·16 min
Lesson 30

Design a News Feed (Twitter / Facebook Timeline)

The canonical fan-out problem. Why neither pure push nor pure pull works at scale, and how the hybrid model that every major platform actually uses is derived.

Advanced2 questions·18 min
Lesson 31

Design a Chat System (WhatsApp / Slack)

Real-time messaging at scale. Connection management, per-conversation ordering, guaranteed delivery across flaky mobile networks, and group fan-out.

Advanced2 questions·17 min
Lesson 32

Design a Notification System

Push, email and SMS at scale. Provider failover, preference enforcement, deduplication and the digest logic that stops you spamming your own users.

Intermediate2 questions·15 min
Lesson 33

Design a Video Streaming Platform (YouTube / Netflix)

The largest-scale case study there is. Transcoding pipelines, HLS and DASH, why 95%+ of bytes must never touch your origin, and counting views at a billion a day.

Expert2 questions·17 min
Lesson 34

Design a Ride-Hailing System (Uber / Lyft)

Real-time geospatial matching. How to index a moving fleet, find nearby drivers in milliseconds, and run a matching algorithm that is correct under heavy concurrency.

Expert2 questions·16 min
Lesson 35

Design a Web Crawler and Search Index

Crawling billions of pages politely, deduplicating near-identical content, and building an inverted index that answers a query in under 200 ms.

Expert2 questions·17 min

Practice tools

Reading is not preparation. These turn the material into something you can produce under pressure.

Frequently asked questions

Is this system design course really free?

Yes. Every lesson, interactive simulator, quiz, flashcard and the mock interview are completely free with no sign-up. Your progress is stored in your browser's local storage and never leaves your device.

I have never done system design before. Is this too advanced?

No - it starts from the beginning. The first lesson explains what system design actually is, defines the vocabulary, and walks through the standard components before any architecture is drawn. Levels are marked from Beginner to Expert so you always know what you are stepping into.

How long does it take to complete?

Roughly 10 hours of reading across 38 lessons, plus the hands-on challenges. The included 10-week plan schedules 6–10 hours a week; you can compress it to five weeks at 15+ hours a week.

What makes this different from a list of system design questions?

Three things. Every answer includes the derivation and the trade-off, not just the conclusion. The concepts you cannot learn from prose - consistent hashing, quorums, rate limiting, cache eviction - are interactive simulators you manipulate directly. And every lesson ends with the follow-up questions an interviewer will actually ask next.

Does it cover the classic design questions?

Yes - there are 7 full worked case studies: URL shortener, news feed, chat system, notification system, video streaming, ride hailing, and a web crawler with a search index. Each one is a complete design with requirements, estimation, architecture and the failure discussion.

Which roles is this for?

Backend, full-stack, platform, infrastructure and senior engineering interviews at any company that runs a system design round. It is also useful outside interviews - the material is the same whether you are being assessed or actually building the system.

Do I need to know a specific programming language?

No. Code examples are used only where they clarify a concept, and they are in Python, SQL, JavaScript or configuration files. You can follow every lesson without writing any code, though the hands-on challenges are where the material sticks.

Start where you are weakest

Run a 45-minute design session right now. Whatever you cannot justify out loud is your first lesson.