Foundations
What system design is, how to approach a design interview, and the numbers and vocabulary every later topic builds on.
- 5 topics
- Quiz on every topic
0% read
- 0 / 5topics read
- –average quiz score
- 0 daysreading streak
- 0saved to revise
Your progress is saved in this browser. Nothing is sent to us.
Module 01
Foundations
-
1.1
Read
What Is System Design?
System design is deciding how the parts of a software system fit together so it stays fast, reliable and affordable as it grows. Here is what that means and a step-by-step way to approach any design question.
-
1.2
Read
Performance vs Scalability
A performance problem makes a system slow for one user; a scalability problem makes it slow only when many users arrive. Learn the difference, and how scaling up and scaling out fix each.
-
1.3
Read
Latency vs Throughput
Latency is how long one request takes; throughput is how many requests finish per second. Learn why percentiles beat averages, how Little's Law links the two, and why tail latency matters at scale.
-
1.4
Read
Back-of-the-Envelope Estimation
Quick, rough calculations of requests per second, storage and bandwidth tell you which parts of a design will be under pressure. Learn the handful of numbers and a method you can use in any interview.
-
1.5
Read
Latency Numbers Every Engineer Should Know
How long common operations take, from reading memory to sending a packet across the world, and what those gaps mean for design: keep data in memory, avoid round trips, and send less over long distances.