Learn system design with real architectures
- Learn real system designs
- Create your own
- Simulate traffic and see what breaks
- Understand the concepts behind them
System design examples
- Chat app
- News feed
- Video streaming
- E-commerce checkout
- URL shortener (first try)
- URL shortener (scaled)
- Search API
- Analytics platform
- RAG chatbot over documents
- LLM serving platform
- ML feature store & training
- Ticket booking
- Payment system with ledger
- Flash sale
- Hotel & home-stay booking
- Stock exchange matching engine
- Product catalog & search
- Ad click aggregation
- Top-K & leaderboards
- Batch + stream data platform
- Recommendation system
- Rate limiter
- Pastebin
- Unique ID generator
- Web crawler
- Notification system
- Search autocomplete
- Key-value store
- Distributed cache
- Distributed message queue
- Object storage
- Metrics & alerting
- Centralised logging
- Multi-region active-active
- CI/CD build system
- Ride hailing
- Nearby places search
- Maps, routing & tiles
- Food delivery dispatch
- Netflix-style video on demand
- Spotify music streaming
- Twitch-style live streaming
- Podcast hosting
- Google Docs collaborative editing
- Dropbox file sync
- Google Calendar
- Notion-like workspace
- WhatsApp-style messaging
- Slack-style team chat
- Zoom-style video calls
- Multiplayer game backend
- Twitter/X home timeline
- Instagram photo sharing
- Reddit-style forum
- TikTok-style recommendation feed
- Live comments
Concepts
- Caching
- Load balancing
- Database indexes
- Replication
- CAP theorem
- Sharding
- Message queues
- TCP
- Server-Sent Events
- WebSockets
- HTTPS
- HyperLogLog
- Network layers
- Bloom filter
- Count-Min Sketch
- Consistent hashing
- Merkle tree
- Segment tree
- Bit tricks and bitmasks
- Square-root decomposition
- LSM tree
- Raft consensus
- Token bucket
- Skip list
- Fenwick tree
- Geohash
- OAuth grant types
- PKCE