System design interview questions
Classic problems such as a URL shortener, Netflix, Uber, WhatsApp and YouTube. Work through the requirements, design it, and submit your solution.
- Beginner
Design TinyURL
Build a URL shortening service like bit.ly.
Roadmap: Beginner, Interview Ready
- Intermediate
Design WhatsApp
Design a one-to-one and group chat system with delivery receipts.
Roadmap: Interview Ready
- Advanced
Design Netflix
Design a global video streaming service.
Roadmap: Interview Ready
- Intermediate
Design YouTube
Design a video sharing platform with uploads, search and comments.
Roadmap: Interview Ready
- Advanced
Design Uber
Design a ride-hailing system that matches riders and drivers.
Roadmap: Interview Ready
How to answer a system design interview question
- Clarify the requirements. Ask what it must do, for how many users, and what matters most.
- Estimate the scale. Rough numbers for traffic and storage show which parts will be under strain.
- Sketch the high-level design. Draw the main parts and follow one request through them.
- Go deep on the hard part. Pick the piece most likely to break and explain how you would make it hold.
- Name the trade-offs. Say what you chose, what you gave up and when you would choose differently.
The Interview Preparation course teaches this method with practice problems.