Skip to content

Latest commit

 

History

50 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Java Low Level Design (LLD) Problems and System Design Implementations

A curated collection of Java-based Low Level Design (LLD) implementations for popular system design problems. Each example demonstrates clean OOP, SOLID principles, and classic design patterns (State, Strategy, Observer, Chain of Responsibility, Factory) with runnable demos. Ideal for interview preparation and hands-on learning.

Java Build

Table of Contents

Easy

  • Parking Lot LLD
    • Java implementation of a multi-level parking lot: vehicle types (car, bike), spot allocation, availability tracking, and capacity management.
  • Vending Machine LLD
    • Java State Pattern example with states (Idle, Ready, Dispense, ReturnChange), inventory management, product selection, and coin handling.

Medium

  • Pub/Sub System LLD
    • Topic-based publish/subscribe with subscribers, message delivery, and topic observables. Demonstrates Observer pattern concepts in Java.
  • Logging System LLD
    • Chain of Responsibility for log handling (INFO, DEBUG, ERROR) with pluggable appenders (Console, File). Extensible design for enterprise logging.
  • Social Network App LLD
    • Users, posts, comments, repositories, and a News Feed using Strategy (e.g., chronological). Includes observers for user notifications.
  • Notification System LLD
    • Multi-channel notifications (Email/SMS/Push) with scheduler, queue, priorities, retry handling, and channel preferences.
  • Digital Wallet Service LLD
    • Accounts, transactions, and multiple payment methods (card, bank transfer) with currency support and basic validations.

Hard

  • Splitwise LLD
    • Expense sharing for groups with equal/unequal/percentage splits, balance calculation, and transaction management.
  • Rate Limiter LLD
    • Multiple algorithms: Token Bucket, Leaky Bucket, Fixed Window Counter, and Sliding Window Log with configs and factory pattern.

About

A curated set of Java low-level design (LLD) projects for interview prep and learning.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages