System Design Advanced¶
Ten classic and AI-era system-design problems, each solved the way a strong senior candidate would answer it in a 45-minute interview.
What's inside¶
Design ChatGPT
LLM serving on GPUs, token streaming, conversation storage, batching and capacity planning.
AIServingStreaming
Design a vector database
HNSW and IVF indexes, sharding, metadata filtering, updates and deletes, recall vs latency.
AIIndexingSharding
Design semantic search for e-commerce
Hybrid retrieval, learning-to-rank, personalisation and evaluation with click data.
AISearchRanking
Design a rate limiter for LLM APIs
Limits by tokens, not just requests: token buckets, distributed counters and fair queuing.
AIRate limitingRedis
Design a URL shortener
ID generation, database choice, caching, redirects at scale and click analytics.
ClassicHashingCaching
Design a notification system
Fan-out across email, SMS and push, queues, retries, preferences and rate limits.
ClassicQueuesFan-out
Design a recommendation system
Candidate generation, ranking models, feature stores, cold start and feedback loops.
MLRankingFeatures
Design a news feed
Fan-out on write vs on read, celebrity accounts, ranking and feed caching.
ClassicFan-outCaching
Design a distributed cache
Consistent hashing, eviction policies, replication, hot keys and cache stampedes.
ClassicConsistent hashingReplication
Design a real-time chat app
WebSockets, presence, message ordering, delivery guarantees and offline sync.
ClassicWebSocketsOrdering
Every problem follows the interview framework¶
- Requirements — functional and non-functional, clarified like a real candidate
- Estimates — traffic, storage and bandwidth with back-of-the-envelope maths
- API and data model
- High-level design — diagram first, then walk the request path
- Deep dives — the two or three components interviewers push on
- Trade-offs, bottlenecks and follow-up questions
Get notified when the System Design track launches — early-bird price for the waitlist.