Skip to main content
System Design

Low-Level Design Tutorial with Examples.

Low-level design tutorial: object-oriented design with SOLID principles, design patterns, UML, class modelling and LLD interview problems.

Also known as Design Patterns.

Beginner

Start here — no prior experience needed

4 lessons

Intermediate

For developers with core concepts down

10 lessons
lld intermediate
5 min read

A motorcycle, a car, and a bus compete for three spot sizes — best-fit allocation, a full-lot rejection, and freeing a spot back for reuse.

lld intermediate
5 min read

Two floor requests, one elevator, and a nearest-request scheduler that has to decide which to serve first and print every floor it passes on the way.

lld intermediate
5 min read

Real date arithmetic decides whether a returned book is late and what the fine is — not a string comparison, and not a guess.

lld intermediate
5 min read

Three people, two shared expenses, and a greedy algorithm that settles every balance to zero in the fewest possible payments — not one payment per expense.

lld intermediate
5 min read

Two ways to shorten a URL — a base62 counter that never collides but leaks a pattern, and a hash that needs real collision handling.

lld intermediate
5 min read

Fix a mismatched payment SDK with an Adapter, hide a five-step order behind a Facade, and cache a slow service with a Proxy, with real Python output.

lld intermediate
5 min read

Watch an isinstance-based folder size silently miss a new node type, then fix it with the Composite pattern: one size() that files and folders share.

lld intermediate
5 min read

Add a maintenance state to a string-checked vending machine and watch a coin vanish, then move each state into its own class with the State pattern.

lld intermediate
5 min read

Break a naive undo with one mid-text edit, then build undo with Memento snapshots and with Command objects, and measure what each one costs in memory.

lld intermediate
5 min read

Add a rule to an if/elif approval ladder and watch it never fire, then rebuild it as a Chain of Responsibility where each handler approves or passes on.

Advanced

Production-grade patterns for experienced engineers

4 lessons

Also part of Low-Level Design

Taught in other topics. Each link opens the lesson in its home topic.

12 lessons
java advanced
5 min read

Learn the five SOLID design principles by running Java examples: each shows the violation, what breaks, and the refactor that fixes it.

java intermediate
5 min read

Learn when to favour composition over inheritance, how to use the Decorator and Strategy patterns, and how to build flexible, loosely coupled Java classes.

java advanced
5 min read

Learn the most important Gang of Four design patterns with production-grade Java implementations — Singleton, Factory, Builder, Observer, and Strategy.

python advanced
5 min read

Run singleton, factory, observer, strategy, decorator and command patterns in idiomatic Python, and see where functions and modules replace classes.

typescript intermediate
5 min read

Singleton, Factory, a typed registry, a type-state Builder, Strategy and Observer in TypeScript, each run with real tsc errors and tsx output.

javascript advanced
5 min read

Runnable JavaScript design patterns — Module, Singleton, Observer, Factory and Command — each shown with real Node output and the problem it solves.

csharp advanced
5 min read

C# design patterns by example: Singleton with Lazy<T> and DI lifetimes, Repository, a hand-rolled Mediator, Decorator for caching, and Strategy.

cpp advanced
5 min read

C++ design patterns run for real: CRTP, mixins, policy-based design, a PIMPL build and its destructor trap, Observer, Factory, thread-safe Singleton.

go advanced
5 min read

Idiomatic Go patterns run for real: functional options, HTTP middleware chains, a repository interface, constructor injection with a fake, and events.

rust advanced
5 min read

Implement idiomatic Rust design patterns — builder, newtype, typestate, RAII guards, strategy closures and observers — as complete runnable programs.

java intermediate
5 min read

Master abstract classes — when to use them over interfaces, template method pattern, and how they enable shared behaviour across a class hierarchy.

java intermediate
5 min read

Learn sealed classes and interfaces (Java 17+) by running them: permits, final vs non-sealed subtypes, exhaustive switch, record patterns and guards.