Case Studies
Full interview-style designs, each worked through the same steps: requirements, estimates, API, data model, high-level design, deep dives, bottlenecks and wrap-up.
- 12 topics
- Quiz on every topic
0% read
- 0 / 12topics read
- –average quiz score
- 0 daysreading streak
- 0saved to revise
Your progress is saved in this browser. Nothing is sent to us.
Module 13
Case Studies
-
13.1 · Case study
Read
Design a URL Shortener
Design a service like bit.ly that turns long links into short ones and redirects billions of clicks. A classic first interview question covering ID generation, base62 encoding, caching and read-heavy scaling.
-
13.2 · Case study
Read
Design a Rate Limiter Service
Design a rate limiter that protects every API in a company: per-client and per-endpoint rules, shared counters across many gateway instances, low added latency, and sensible behaviour when the counter store fails.
-
13.3 · Case study
Read
Design a Distributed Key-Value Store
Design a Dynamo-style key-value store: partitioning with consistent hashing, replication, tunable quorums, conflict handling, failure detection and repair. It brings together most of the distributed systems ideas in this course.
-
13.4 · Case study
Read
Design a Unique ID Generator at Scale
Design a service that hands out unique, roughly time-ordered 64-bit IDs to thousands of servers at millions per second, with no single point of failure. Covers Snowflake layouts, machine ID assignment, clock problems and ID blocks.
-
13.5 · Case study
Read
Design a News Feed
Design the home feed of a social app: users follow others and see their posts, newest or most relevant first. The core decision is fan-out on write vs fan-out on read, and how to handle accounts with millions of followers.
-
13.6 · Case study
Read
Design a Chat App
Design one-to-one and group messaging like WhatsApp or Slack: persistent connections, message delivery and ordering, storage per conversation, delivery and read receipts, presence, and offline users.
-
13.7 · Case study
Read
Design a Notification System
Design a service that sends push, SMS and email notifications for many products: templates, user preferences, per-channel queues and workers, third-party providers, retries, deduplication, rate limits and tracking.
-
13.8 · Case study
Read
Design a Web Crawler
Design a crawler that fetches billions of pages for a search engine: the URL frontier, politeness per host, robots.txt, URL normalisation and deduplication, content deduplication, and distributing the work.
-
13.9 · Case study
Read
Design Search Autocomplete
Design type-ahead suggestions that return the most popular completions for each prefix within tens of milliseconds: tries with precomputed top-k lists, an offline pipeline that aggregates query logs, caching and sharding by prefix.
-
13.10 · Case study
Read
Design a Video Streaming Platform
Design a YouTube-style platform: resumable uploads, a transcoding pipeline into many resolutions, segment-based adaptive streaming (HLS/DASH) served from CDNs, and the metadata, views and recommendations around it.
-
13.11 · Case study
Read
Design a Ride-Hailing Service
Design an Uber-style service: drivers stream locations every few seconds, riders request trips, and the system finds nearby drivers, matches them, and tracks the trip. Covers geospatial indexing, high-frequency writes and matching.
-
13.12 · Case study
Read
Design Distributed File Storage (like a shared drive)
Design a Dropbox or Google Drive style service: upload, sync and share files across devices. Covers chunking, content hashing and deduplication, metadata vs block storage, sync with change notifications, versions and conflicts.