Roadmap
System design
How large systems stay fast and reliable, and how to reason about trade-offs out loud.
Who it's for
Developers with a year or more of experience, and students preparing for design rounds.
Where it leads
- Senior software engineer
- Backend engineer
- Software architect
By the end you can
- Estimate load and storage on the back of an envelope
- Choose between SQL, NoSQL, caches and queues with reasons
- Design a common system and defend each choice
- 1
Building blocks
Load balancers, caches, databases, queues and CDNs, and what each one is for.
- 2
Data at scale
Replication, partitioning and consistency decide what your system can promise.
- 3
Learn from real systems
How companies actually built things, written by the engineers who did it.
- 4
Practise designing
Talking through a design clearly is a skill of its own.
Do this: Design a URL shortener, a chat app and a news feed on paper, then compare each with a published design.
Learning this with others is easier.
Ask questions when you're stuck, find people on the same path, and track your progress on DevLearn.