back to home

ashishps1 / awesome-low-level-design

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

22,302 stars
5,472 forks
69 issues
JavaPythonC#

AI Architecture Analysis

This repository is indexed by RepoMind. By analyzing ashishps1/awesome-low-level-design in our AI interface, you can instantly generate complete architecture diagrams, visualize control flows, and perform automated security audits across the entire codebase.

Our Agentic Context Augmented Generation (Agentic CAG) engine loads full source files into context, avoiding the fragmentation of traditional RAG systems. Ask questions about the architecture, dependencies, or specific features to see it in action.

Embed this Badge

Showcase RepoMind's analysis directly in your repository's README.

[![Analyzed by RepoMind](https://img.shields.io/badge/Analyzed%20by-RepoMind-4F46E5?style=for-the-badge)](https://repomind-ai.vercel.app/repo/ashishps1/awesome-low-level-design)
Preview:Analyzed by RepoMind

Repository Summary (README)

Preview
<p align="center"> <img src="images/lld-repo-logo.png" width="350" height="200"> </p> <p align="center"> <a href="https://blog.algomaster.io/">Join Free Newsletter</a> </p>

This repository contains resources to learn Low Level Design (LLD) / Object Oriented Design (OOD) and prepare for interviews. It covers OOP fundamentals, design patterns, UML, concurrency and commonly asked interview questions.

👉 For a better and more comprehensive experience, checkout the LLD page at AlgoMaster.io

🧱 OOP Fundamentals

🔗 Class Relationships

🧭 Design Principles

🧩 Design Patterns

Creational PatternsStructural PatternsBehavioral Patterns
SingletonAdapterIterator
Factory MethodBridgeObserver
Abstract FactoryCompositeStrategy
BuilderDecoratorCommand
PrototypeFacadeState
FlyweightTemplate Method
ProxyVisitor
Mediator
Memento
Chain of Responsibility

🗂️ UML

⏱️ Concurrency and Multi-threading Concepts

Concurrency 101

Synchronization Primitives

Concurrency Challenges

Concurrency Patterns

How to Answer a LLD Interview Problem

<img src="images/interview-template.png" width="350" height="250">

💻 Low Level Design Interview Problems

Easy Problems

Medium Problems

Hard Problems

⏱️ Concurrency and Multi-threading Problems

📇 Courses

📚 Books

📩 Newsletter

Additional resources

🤝 Contributing

Contributions are welcome! If you'd like to add a new problem, improve existing content, or fix errors:

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/your-feature-name
  3. Commit your changes: git commit -m 'Add some feature'
  4. Push to the branch: git push origin feature/your-feature-name
  5. Submit a pull request

Please make sure to update Readme files and documentation as appropriate.


<p align="center"> <i>If you find this resource helpful, please give it a star and share it with others!</i> </p>