Low-Level Design Course

A free, hands-on low-level design (LLD) and machine-coding course: lessons on object-oriented design, UML class diagrams, SOLID, design patterns, concurrency and the machine-coding round. Every lesson has a class-diagram exercise that checks your design as you draw, and a quiz. Then design classic interview problems yourself and compare with a model answer.

How LLD interviews work

From a vague prompt to classes you can defend.

Object-oriented basics, the way interviewers check them

Encapsulation, abstraction, inheritance, composition and polymorphism, with code.

Class diagrams you can draw in five minutes

Boxes, members, the six relationships and multiplicity.

SOLID, without the slogans

Five principles as five questions to ask of your design.

Creational patterns

Factory, builder and singleton: when to use them and when not to.

Structural patterns

Adapter, decorator, facade, composite and proxy.

Behavioural patterns I

Strategy and observer: swap behaviour, broadcast events.

Behavioural patterns II

State, command, chain of responsibility and template method.

Modelling behaviour: sequence and state diagrams

Who calls whom, and which states an object moves through.

Concurrency in LLD

Thread safety, locks, and the double-booking problem.

The machine-coding round

Ninety minutes, a working program, and how you are graded.

Practice and reference