Skip to content

mehul-m-prajapati/system_design

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 

Repository files navigation

System Design

This repository contains a collection of High-Level Design (HLD) and Low-Level Design (LLD) problems and solutions. It is intended to help engineers, developers, and system architects improve their system design skills through practical examples and detailed explanations.

Contents

  • High-Level Design (HLD):

    • Concepts, patterns, and solutions for designing scalable, reliable, and maintainable systems.
    • Examples of designing distributed systems, microservices, databases, and more.
  • Low-Level Design (LLD):

    • Focuses on detailed design aspects, including classes, objects, and interactions within components.
    • Covers topics such as UML diagrams, class design, API design, and more.

Features

  • A comprehensive collection of HLD and LLD problems based on real-world scenarios.
  • Step-by-step breakdowns of design decisions and trade-offs.
  • UML diagrams and class-level design details for easy understanding.
  • Code snippets and practical solutions for implementation.
  • Discussion of system scalability, performance considerations, and fault tolerance.

Topics Covered

  • High-Level Design:

    • System architecture patterns (e.g., microservices, event-driven architecture)
    • Scalability and high availability
    • Load balancing and caching strategies
    • Fault tolerance and disaster recovery
    • Database design and sharding
  • Low-Level Design:

    • Object-oriented design principles (e.g., SOLID)
    • Class and sequence diagrams
    • API design and RESTful services
    • Data modeling and relational/non-relational databases
    • Caching and optimization strategies

About

A collection of High-Level Design (HLD) and Low-Level Design (LLD) problems

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

Packages

No packages published

Languages