System Design

System Design Fundamentals

Scalability, networking, APIs, databases, caching, load balancing, queues and CAP — the vocabulary and mental models you need before designing real systems.

Beginner6 weeks8 modules · 39 lessons

What you'll walk away with

  • Speak fluently about scalability, latency and availability
  • Choose the right database, cache and communication style
  • Whiteboard small designs with a repeatable framework
  • Be ready for the Advanced course's distributed deep dives
Loading your progress…
0%

Progress saves on this device automatically. Reviews follow the 1 · 3 · 7 · 21 · 60 day spaced schedule.

How to study this course (the neuroscience built in)

Active Recall

Answer the recall questions BEFORE revealing. Trying to remember — even failing — builds memory 3x stronger than rereading.

Spaced Repetition

Completed lessons return for review after 1, 3, 7, 21 and 60 days. Review exactly when you're about to forget.

Chunking

Each module is one small digestible chunk with a one-line memory hook. Finish a chunk fully before starting the next.

Feynman Technique

Every module ends with a teach-it-back prompt. If you can't explain it simply, you haven't learned it yet.

Interleaving

Mixed revision phases deliberately shuffle topics — discrimination between problem types is what exams test.

Dual Coding

Interactive simulators pair visuals with text. Two memory channels beat one — always do the interactives, not just the videos.

Curriculum

Vertical vs horizontal scaling10 min
Latency, throughput, bandwidth — with real numbers12 min
Interactive: numbers every engineer should know10 min
Availability, nines, and single points of failure12 min
Back-of-envelope estimation: QPS & storage15 min

Feynman Prompt — teach it back

Explain latency vs throughput using a highway: speed of one car vs cars per hour.

Active Recall — answer before revealing