← Study

System Design

Designing systems that scale, for backend/AI-engineer interviews: the method, the building blocks, and worked case studies.

Study priority, if you're short on time

Tier 1 — master these first: How to Approach a System Design Interview, Back-of-the-Envelope Estimation, Scalability, Availability & Reliability, CDN, Reverse Proxy, Load Balancer, API Gateway, Caching, Message Queue, Database Replication, Sharding, CAP Theorem, Strong vs Eventual Consistency, Idempotency, Consistent Hashing, Fan-out, URL Shortener, Distributed Rate Limiter, Notification System, News Feed, Chat System, Ticket Booking System, ChatGPT, LLM Inference Serving Platform.

Tier 2 — strong understanding: DNS, Microservices, Polling vs Long Polling vs WebSockets vs SSE, Circuit Breaker, Unique ID Generation, Blob Storage & Media Pipelines, Search & Inverted Indexes, Geospatial Indexing, Distributed Key-Value Store, Search Autocomplete, Web Crawler, Video Streaming Platform, File Storage & Sync, Ride-Sharing Service, Payment System, AI Agent Platform, AI Content Moderation System, Image Generation Service.

Tier 3 — learn after these: Bloom Filters, HyperLogLog & Count-Min Sketch, Distributed Job Scheduler, Real-Time Leaderboard.

Foundations
How to Approach a System Design Interview
Back-of-the-Envelope Estimation
Scalability — Vertical vs Horizontal, Stateless Services & Bottlenecks
Availability & Reliability — Nines, Redundancy, Failover & SLOs
Core Concepts
What is a CDN?
What is a Reverse Proxy? (vs a Forward Proxy)
What is a Load Balancer?
What is an API Gateway?
What is DNS?
What is Caching? (and Where Caches Live)
What is a Message Queue?
What is Database Replication?
What is Sharding (Partitioning)?
What is the CAP Theorem?
What is Strong vs Eventual Consistency?
What are Microservices? (vs a Monolith)
Polling vs Long Polling vs WebSockets vs SSE
What is Idempotency?
What is a Circuit Breaker?
Building Blocks
Consistent Hashing
Unique ID Generation — UUIDs, Ticket Servers & Snowflake
Fan-out — Push vs Pull, and Pub/Sub
Blob Storage & Media Pipelines
Search & Inverted Indexes
Bloom Filters, HyperLogLog & Count-Min Sketch
Geospatial Indexing — Geohash, Quadtrees & S2
Classic Case Studies
Design a URL Shortener
Design a Distributed Rate Limiter
Design a Distributed Key-Value Store
Design a Notification System
Design a News Feed
Design a Chat System (WhatsApp)
Design Search Autocomplete
Design a Web Crawler
Large-Scale Products
Design a Video Streaming Platform (YouTube)
Design File Storage & Sync (Google Drive / Dropbox)
Design a Ride-Sharing Service (Uber)
Design a Ticket Booking System (BookMyShow)
Design a Payment System
Design a Distributed Job Scheduler
Design a Real-Time Leaderboard
AI Systems
Design ChatGPT (LLM Chat Service)
Design an LLM Inference Serving Platform
Design an AI Agent Platform (Tool Use)
Design an AI Content Moderation System
Design an Image Generation Service (Midjourney)