All problems (16)
Practice
System Design Problems
The 16 most important system design interview problems, 6 LLD and 10 HLD, grouped by the idea each one teaches. Each goes from requirements to a working design: diagrams, code or architecture, failure cases, trade-offs and the follow-up questions interviewers ask.
New to system design? Learn the concepts first in the System Design course →How every problem is solved
Low Level Design · 6 problems
Classes, patterns and code for one well-scoped system.
- 01Problem introduction
- 02Problem statement
- 03Requirements
- 04Core entities
- 05Diagrams
- 06Design principles
- 07Design patterns
- 08Complete solution in Go
- 09The other five languages
- 10Testing
- 11Design review
- 12Interview questions
High Level Design · 10 problems
Whole architectures that serve millions of users.
- 01Problem introduction
- 02Problem statement
- 03Requirements
- 04Capacity estimation
- 05API design
- 06Database design
- 07Architecture
- 08Request lifecycle
- 09Component deep dive
- 10Scaling, 100 to 10M users
- 11Failure scenarios
- 12Reliability and observability
- 13Security
- 14Trade-offs
- 15Final architecture
- 16Interview discussion
Three ways to work a problem
Learn
The full write-up: requirements, diagrams, step-by-step reasoning, the solution, tests and a design review. For learning an idea from scratch.
Practice
Only the brief at first: statement, requirements, constraints and what to hand in. Design it yourself, open hints one by one, and reveal the solution when you're ready.
Interviewcoming soon
A timed mock round: one question at a time, follow-ups that push on your assumptions, and an honest evaluation at the end.