System Design Interview Prep

A complete study plan for system design interviews. Covers all 23 major design case studies from URL shorteners to distributed systems, with recommended study order and capacity estimation cheat sheets.

How to Use This Plan

Start with the foundational designs (Phase 1) to build your system design vocabulary, then progress to more complex systems. Each case study covers requirements, capacity estimation, high-level design, database choices, API design, and deep dives.


Phase 1: Foundational Designs

These are the most commonly asked and form the building blocks for more complex systems.

  1. URL Shortener — Core concepts: hashing, database design, caching, read-heavy systems
  2. Rate Limiter — Token bucket, sliding window, distributed rate limiting
  3. Distributed Cache — Consistent hashing, eviction policies, cache invalidation
  4. Web Crawler — BFS/DFS, URL frontier, politeness, deduplication

Phase 2: Social & Real-Time Systems

Designs that involve real-time communication, social graphs, and feeds.

  1. Twitter — Fan-out, timeline generation, social graphs at scale
  2. Instagram — Photo storage, news feed, CDN, object storage
  3. WhatsApp — Real-time messaging, WebSocket, message delivery guarantees
  4. Slack — Channels, presence, search, real-time sync
  5. Zoom — Video streaming, WebRTC, SFU/MCU, adaptive bitrate
  6. Quora — Q&A platform, ranking, moderation, search

Phase 3: Marketplace & Geo Systems

Designs with location data, real-time coordination, and marketplace dynamics.

  1. Uber — Geospatial indexing, matching, ETA, surge pricing
  2. Yelp — Location-based search, reviews, geohashing
  3. Google Maps — Map tiles, routing, ETA, traffic data
  4. Ticketmaster — Seat reservation, distributed locking, high-traffic events
  5. Online Auction — Bidding, real-time updates, consistency
  6. Strava — GPS tracking, activity feeds, leaderboards

Phase 4: Content & Media Platforms

Designs involving content delivery, streaming, and large-scale storage.

  1. YouTube — Video upload, transcoding, CDN, recommendation
  2. Netflix — Adaptive streaming, content delivery, personalization
  3. Dropbox — File sync, chunking, deduplication, conflict resolution
  4. Google Docs — Real-time collaboration, OT/CRDT, conflict resolution

Phase 5: Specialized Systems

  1. Robinhood — Stock trading, order matching, market data feeds
  2. Job Scheduler — Distributed task scheduling, priority queues, retries
  3. Top-K — Heavy hitters, count-min sketch, streaming algorithms

Supporting Topics

Read these systems deep-dives to strengthen your building-block knowledge:


Design Patterns