System Design
From caching to designing Twitter β learn how real-world systems are built, step by step.
Fundamentals
What is System Design?
The blueprint behind every app you useβ
Scalability
From one user to one billion β how systems growβ
Load Balancing
Sharing the work so no server burns outβ
Caching
Keep the good stuff close β skip the slow tripβ
Databases: SQL vs NoSQL
Choosing the right home for your dataβ
Building Blocks
CAP Theorem
You can't have it all β pick two out of threeβ
Consistent Hashing
Adding a server shouldn't reshuffle everythingβ
Message Queues
Don't do everything right now β put it in lineβ
API Design
The contract between your system and the worldβ
Content Delivery Networks
Serve content from the closest shelf, not the warehouseβ
Web Services
Social & Communication
Design a Chat System
Real-time messaging for millions β delivered instantlyβ
Design a Notification System
The right message, to the right person, at the right timeβ
Design a News Feed
Delivering personalized content to millions β instantlyβ
Design an Image Hosting Service
Upload, store, and serve images at scale β like Imgurβ
Design a Video Streaming Service
Upload, transcode, and stream video to millions β like YouTubeβ
Design a Social Network
Connect billions of people β profiles, friends, and feeds at scaleβ
Design a Collaborative Editor
Multiple cursors, one document β real-time editing at scaleβ
Design a Music Streaming Service
Stream 100M+ songs to millions of listeners β like Spotifyβ
Data & Infrastructure
Design a Key-Value Store
Build a distributed hash map like Redis or DynamoDB β at planet scaleβ
Design a File Storage System
Upload, sync, and share files across every device β like Dropboxβ
Design a Task Queue
Distribute background jobs reliably β like Celery and SQSβ
Design a Web Crawler
Crawl the entire web like Googlebot β politely and at scaleβ
Design a Search Engine
Index billions of pages and return relevant results in millisecondsβ
Design an Object Storage
Store unlimited objects with 11 nines of durability β like AWS S3β
Design a Metrics Monitoring System
Collect, store, query, and alert on millions of time-series data points β like Datadog and Prometheusβ
Business Systems
Design a Payment System
Move money safely, exactly once, every timeβ
Design a Ride Sharing Service
Match riders with nearby drivers in real-time β at massive scaleβ
Design an E-Commerce Platform
Build Amazon-scale shopping β from catalog to checkout to deliveryβ
Design a Food Delivery System
Connect hungry customers with restaurants and delivery drivers β at scaleβ
Design a Ticket Booking System
Sell out stadiums without selling a seat twiceβ
Design an Ad Click Aggregator
Count billions of ad clicks accurately β for billing and analyticsβ