← Interview Preparation

OOD & Low-Level Design Reference

A reference-style guide for object-oriented and low-level design interviews at senior+ companies — SOLID principles, the patterns that actually appear in loops, how to run an LLD round, and walkthroughs of classic problems. Brief overviews and curated readings, not LeetCode-style algorithm practice. Complements system design prep (ByteByteGo, HelloInterview) with class-level design depth.

Time budget: ≈45h

How to use this reference

  • Work through topics top to bottom — classic problem walkthroughs assume you know SOLID and the core patterns from earlier topics.
  • This is class-level design (objects, interfaces, patterns), not distributed system architecture — keep that boundary clear in interviews.
  • Optional practice tasks are whiteboard sketches or small local implementations — the skill is articulating trade-offs, not passing hidden tests.
  • Use any language you interview in; examples assume OOP (Java/C#/Kotlin/Python with classes) but principles transfer.

The Reference

  1. 1

    The principles behind maintainable class design — SOLID, composition over inheritance, and crisp boundaries between objects.

    1. 1.1SOLID Principles2/525m
    2. 1.2Composition vs Inheritance2/520m
    3. 1.3Classes, Interfaces & Cohesion2/520m
  2. 2

    The ~10 patterns that actually show up in LLD loops — not all 23 GoF patterns, just the ones worth drilling.

    1. 2.1Creational Patterns3/525m
    2. 2.2Structural Patterns3/525m
    3. 2.3Behavioral Patterns3/530m
    4. 2.4Pattern Selection & Anti-Patterns3/520m
  3. 3

    How to run the 45-minute round — clarify, API, classes, trade-offs — without jumping to code too early or over-designing.

    1. 3.1Running an LLD Round2/525m
    2. 3.2Trade-offs, Extensibility & Communication3/525m
  4. 4

    Problems that test entity modeling, state transitions, and allocation logic — the bread and butter of OOD interview loops.

    1. 4.1Parking Lot3/530m
    2. 4.2Vending Machine3/525m
    3. 4.3Library Management System3/530m
    4. 4.4Elevator System4/535m
    5. 4.5Online Chess4/535m
  5. 5

    The building blocks senior backend loops love — caches, rate limiters, schedulers, and the ordered/streaming structures underneath them — where data structures meet class design.

    1. 5.1Rate Limiter4/530m
    2. 5.2LRU Cache4/530m
    3. 5.3Task Scheduler & Job Queue4/530m
    4. 5.4Connection Pool4/535m
    5. 5.5Skip List / Ordered Set4/530m
    6. 5.6Ring Buffer / Circular Queue3/530m
  6. 6

    Making designs interview-ready — clean public surfaces, plugin extensibility, and defensive error handling at the class level.

    1. 6.1Extensible APIs & Plugin Architecture4/525m
    2. 6.2Errors, Invariants & Validation3/525m