awesome-low-level-design (ashishps1/awesome-low-level-design)
Searching Databaseโฆ
27.4K ยทGitHub
What is this?
A curated collection of free resources for learning Low Level Design (LLD) / Object-Oriented Design and preparing for LLD interview rounds.
Is this a tutorial, a problem set, or both?
It is both: conceptual notes on OOP, design patterns, UML and concurrency, plus a graded list of machine-coding interview problems with solutions.
Where should a beginner start?
Start with the 'How to Learn LLD' guide and the '15 Must-Know OOP Concepts' section at the top of the README, then move into OOP fundamentals and design patterns.
Who is this aimed at?
Software engineers preparing for machine-coding and LLD interview rounds, as well as anyone wanting to strengthen OOP design skills.
What concurrency topics does it cover?
It covers concurrency fundamentals (threads vs processes, race conditions), synchronization primitives (mutexes, semaphores, CAS), concurrency patterns (producer-consumer, thread pool), and dedicated multi-threading interview problems like Print FooBar Alternately and Design Thread-Safe Blocking Queue.
What kind of design patterns are included?
All classic Gang of Four patterns are listed: Singleton, Factory Method, Abstract Factory, Builder, Prototype under Creational; Adapter, Bridge, Composite, Decorator, Facade, Flyweight, Proxy under Structural; and Iterator, Observer, Strategy, Command, State, Template Method, Visitor, Mediator, Memento, Chain of Responsibility under Behavioral.
What example interview problems does the list include?
Examples range from easier ones like Design Parking Lot and Design a Vending Machine to harder ones like Design Splitwise, Design an Online Shopping System like Amazon, and Design a Ride-Sharing Service like Uber.
Are there supplementary courses or books recommended?
Yes, it links to AlgoMaster.io courses on LLD and Concurrency interviews, an AlgoMaster newsletter, and books such as Head First Design Patterns, Clean Code, and Refactoring.
What are similar projects?
system-design-primer, LeetCode-Questions-CompanyWise, LeetcodeTop, awesome-scalability, awesome-design-patterns, algorithm-base, interview, android-interview-questions
Which topics is it in?
uml, object-oriented-programming, interview-practice, coding-interview, design-patterns, system-design, interview-questions, concurrency, interview, awesome, learning-resources, java