LearningFeed · System Design

System Design — from the ground up

Track: system-design · generated 2026-09-30
15lessons in curriculum
7rendered
1new today

A-Foundations (4/5 done)


Day 1
From one server to a website: DNS, web tier, database
A-Foundations
Day 2
Scaling out: load balancers, replication, cache, CDN
A-Foundations
Day 3
Back-of-the-envelope estimation: QPS, storage, availability
A-Foundations
Day 4
A 4-step framework for any system design interview
A-Foundations
Day 15 · 🔒
Reliable, scalable, maintainable: the three pillars (DDIA ch1)
A-Foundations · not yet generated

B-Building blocks (3/10 done)


Day 5
Design a rate limiter: token bucket, sliding window, Redis
B-Building blocks
Day 6
Consistent hashing: why hash % N breaks and how to fix it
B-Building blocks
Day 7
Design a key-value store: partitioning, replication, consistency
B-Building blocks
Day 8 · 🔒
Unique ID generation in distributed systems: snowflake
B-Building blocks · not yet generated
Day 9 · 🔒
Design a URL shortener: encoding, hashing, 301 vs 302
B-Building blocks · not yet generated
Day 10 · 🔒
Design a web crawler: BFS frontier, politeness, dedup
B-Building blocks · not yet generated
Day 11 · 🔒
Design a notification system: queues, retries, fan-out
B-Building blocks · not yet generated
Day 12 · 🔒
Design a news feed: push vs pull, fan-out on write vs read
B-Building blocks · not yet generated
Day 13 · 🔒
Design a chat system: long polling, WebSocket, online status
B-Building blocks · not yet generated
Day 14 · 🔒
Design search autocomplete: trie, sampling, sharding
B-Building blocks · not yet generated