"System design interview" gets used for two different rounds that test different things. High-level design (HLD) is about services, data stores, and scale. Low-level design (LLD) is one level down — the classes, interfaces, and object interactions that make a single component actually correct.
High-level design (HLD)
"Design a URL shortener," "design a payments ledger," "design a notification system." You're drawing boxes and arrows: load balancers, databases, caches, queues. The evaluation is about tradeoffs at the system level:
- Consistency vs. availability under partition
- Partitioning and replication strategy
- Where you introduce caching, and its invalidation cost
- How the system degrades under load or partial failure
Low-level design (LLD)
"Design a rate limiter," "design a parking lot," "design an in-memory LRU cache." No boxes and arrows — you're writing classes and interfaces, and the interviewer keeps adding constraints to see if your design bends or breaks:
- Does your class model actually stay correct as requirements escalate?
- Are your interfaces extensible without a rewrite?
- Do you handle concurrency at the object level, not just the system level?
- Can you justify each design choice, not just state it?
Why candidates conflate them
Most system design prep resources only cover HLD, because it's more visual and easier to template. LLD gets treated as a subset, when it's actually a distinct skill: staying correct under escalating constraints, not drawing a bigger architecture diagram. Senior and staff loops increasingly test both separately — HLD to see if you can reason about a system, LLD to see if you can actually build one correctly.
How LLD rounds typically escalate
- Stage 1: get a working, correct solution to the base problem
- Stage 2: add a constraint — concurrent access, a new requirement
- Stage 3: the senior filter — push until the naive fix breaks, and see if you can redesign rather than patch
The candidates who struggle usually have a working Stage 1 answer but patch their way through Stage 2 and 3 instead of recognizing when the design itself needs to change.
Practice staged LLD problems
Senior Loop's Build It problems are staged the same way real interviews escalate: you start with a correct baseline and move through tightening constraints toward the senior-level version, proving correctness with a conservation invariant instead of an eye-test. The first problem is free, no card required.
Part of the Senior Backend Engineer Interview Prep guide.