Low Level Design
7h of practice12 problems
Low level design is the round that catches people who can draw boxes but cannot name what is inside them. The question is not "what services exist" but "what are the types, who owns the invariant, and what happens when two people do this at once".
The reliable way through is the same every time: the nouns, the operations, the state machine, the invariant, and only then the patterns, and never a pattern you cannot justify in one sentence.
The round · Forty-five minutes. You are asked to model a small system in objects, entities, interfaces, the state machine, the concurrency, and usually to write the core class or two in real code.
Difficulty
Topic
12 problems
Easy
3- Design a parking lotThe canonical warm-up. Easy to pass, easy to be unremarkable at.Entities · Strategy pattern · Concurrency35 min
- Design a vending machineA state machine with money in it, which is the version that has to be right.State machine · Invariants · Money30 min
- Design an N×N board gameThe naive win check is O(n²) per move. Making it O(1) is the question.State machine · Invariants · Complexity30 min
Medium
7- Design an elevator systemTwo kinds of request, four elevators, and a scheduling policy you have to defend.Scheduling · State machine · Strategy pattern45 min
- Design an expense-splitting appMoney that must balance to the cent, and a settlement graph worth simplifying.Domain modelling · Money · Graph simplification40 min
- Design an in-memory file systemA tree, a path parser, and the two or three operations everyone gets subtly wrong.Composite pattern · Trees · Path parsing35 min
- Design a logging libraryEveryone gets the levels right. The marks are in what happens when the sink is slow.Chain of responsibility · Async IO · Back pressure35 min
- Design a text editor with undoTwo stacks and a data structure choice that decides whether it is usable on a large file.Command pattern · Data structures · Undo/redo35 min
- Design an in-process pub/sub libraryTwenty lines that work and three questions about failure that decide the round.Observer pattern · Memory management · Error isolation35 min
- Design a meeting room schedulerOverlapping intervals, two people booking the same slot, and recurrence rules that fight daylight saving.Intervals · Contention · Time zones · Recurrence40 min
Hard
2- Design a chess gamePiece movement is the easy half. Check, castling and en passant are the design.Polymorphism · Rules engines · State45 min
- Design an order matching enginePrice-time priority, partial fills, and an invariant that must hold after every single event.Data structures · Invariants · Determinism40 min