Beginner Web Development
System Design for Interviews
Walk into a system design interview with a method instead of a blank whiteboard. Prof. Daniel shows a six-step framework: clarify requirements, estimate the scale, design the API and the data model, draw the high-level design and go deep on the hardest part. Then you learn the building blocks interviewers expect you to reason about: load balancers, horizontal scaling and CDNs; SQL versus NoSQL, replication, sharding and the CAP theorem; caching patterns, message queues and safe retries. Finally you apply everything to four classic questions: a URL shortener, a chat app, a news feed and a rate limiter. Every claim is checked against the original papers, RFCs and vendor documentation, and every choice comes with its trade-off.
5 modules 5 lessons 3 h 150 questions
Course content
1 The Interview Framework 1 lesson · 6 min
2 Scaling the Web Tier 1 lesson · 7 min
3 Data at Scale 1 lesson · 7 min
4 Caching and Queues 1 lesson · 7 min
5 Classic Designs 1 lesson · 7 min
Tips
See all
Framework
Ask before you draw
Spend the first minutes on requirements, not boxes
Framework
Round your numbers on purpose
Back-of-the-envelope math with easy figures
Framework
Pick one hard part and go deep
Finish the high-level design, then name your bottleneck
Scaling
Say where the session lives
Stateless servers are what make scaling out possible
