Skip to content
86

Awesome Low Level Design

Learn Low Level Design (LLD) and prepare for interviews using free resources.

27k stars6,558 forks64 entriesLast push Aug 19, 2026 (1 month ago)License GPL-3.0

This page lists names, links and short descriptions. The original list on GitHub is the source and belongs to its authors.

Start Here

How to Learn LLD

15 Must-Know OOP Concepts

OOP Fundamentals

Classes and Objects

Enums

Interfaces

Encapsulation

Abstraction

Inheritance

Polymorphism

Class Relationships

Association

Aggregation

Composition

Dependency

Design Principles

DRY Principle

YAGNI Principle

KISS Principle

SOLID Principles with Pictures

SOLID Principles with Code

Design Patterns

Singleton

Adapter

Factory Method

Bridge

Abstract Factory

Composite

Builder

Decorator

Prototype

Facade

UML

Class Diagram

Use Case Diagram

Sequence Diagram

Activity Diagram

State Machine Diagram

Concurrency and Multi-threading Concepts >Concurrency 101

Introduction to Concurrency

Concurrency vs Parallelism

Processes vs Threads

Thread Lifecycle and States

Race Conditions and Critical Sections

Concurrency and Multi-threading Concepts >Synchronization Primitives

Mutex (Mutual Exclusion)

Semaphores

Condition Variables

Coarse-grained vs Fine-grained Locking

Reentrant Locks

Try-Lock and Timed Locking

Compare-and-Swap (CAS)

Concurrency and Multi-threading Concepts >Concurrency Challenges

Deadlock

Livelock

Concurrency and Multi-threading Concepts >Concurrency Patterns

Signaling Pattern

Thread Pool Pattern

Producer-Consumer Pattern

Reader-Writer Pattern

Concurrency and Multi-threading Problems

Print FooBar Alternately

Print Zero Even Odd

Fizz Buzz Multithreaded

Building H2O Molecule

Design Thread-Safe Cache with TTL

Design Concurrent HashMap

Design Thread-Safe Blocking Queue

Design Concurrent Bloom Filter

Multi-threaded Merge Sort

Courses

Master LLD Interviews - AlgoMaster.io

Master Concurrency Interviews - AlgoMaster.io

Books

Head First Design Patterns

Clean Code

Refactoring: Improving the Design of Existing Code

Newsletter

AlgoMaster Newsletter

In 2 lists

Additional resources

Coursera - Object-Oriented Design

Coursera - Design Patterns

Github - Awesome Design Patterns

Collection of patterns from code-level to microservices and big data.

In 3 listsDetails
See category
94

Awesome C++

fffaraz/awesome-cpp

A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny things. Inspired by awesome-... stuff.

Fresh★ 74k1358 entriesPushed yesterday
89

Awesome Algorithms

tayllan/awesome-algorithms

A curated list of awesome places to learn and/or practice algorithms.

Fresh★ 26k35 entriesPushed 7 days ago
86

Awesome English

yvoronoy/awesome-english

A collection of awesome study resources for learners of English.

Fresh★ 4.1k152 entriesPushed 18 days ago
84

Awesome Product Management

dend/awesome-product-management

🚀 A curated list of awesome resources for product/program managers to learn and grow.

Fresh★ 2.4k154 entriesPushed 22 days ago
84

awesome-speaking

matteofigus/awesome-speaking

Resources about public speaking

Fresh★ 2k38 entriesPushed 18 days ago