Start Here
What system design is, how this track is laid out, what interviews actually test, and how to practise without fooling yourself.
What system design is
System design means deciding how the parts of a software product fit together so it keeps working as more people use it.
A single program on one laptop is easy to reason about. A product used by millions is not. It runs on many machines (servers), stores data in more than one place, and must survive machines failing. The design is the answer to questions like:
- Where does the data live, and how is it copied?
- What happens when one server dies at 2 a.m.?
- How do we keep a page fast when ten thousand people open it at once?
- What do we give up to get that speed?
That last question is the core of the subject. Almost every choice trades one good thing for another: speed for freshness, simplicity for scale, cost for safety.
1 of 6