Low-Level Design
System Design › Low-Level DesignDesign Patterns Cheat Sheet (All 16, One Page)
All 16 must-know design patterns on one page, grouped into Creational, Structural and Behavioural families — each with a one-line what-it-does and when-to-use, linking to the full Java deep-dive.
System Design › Low-Level DesignDesign a Food Delivery App (Low-Level Design)
Low-level design of a food delivery app (Swiggy/Zomato style): Customer, Restaurant, Menu, Order and DeliveryPartner, with an order-lifecycle State machine, Strategy partner-matching and pricing, and Observer status updates.
System Design › Low-Level DesignDesign a Meeting Scheduler (Low-Level Design)
Low-level design of a meeting scheduler: Users and Rooms with Calendars of Intervals, strict interval-overlap for conflict detection, merge-intervals to find a common free slot, plus atomic booking and recurring/timezone concerns.
System Design › Low-Level DesignDesign Snake and Ladder (Low-Level Design)
Low-level design of Snake and Ladder: model snakes and ladders as a single Jump map (start to end), a parameterised Dice, players with positions, and a Game loop over a player queue with clean edge-case handling.
System Design › Low-Level DesignDesign Chess (Low-Level Design)
Low-level design of Chess: an 8x8 Board of Cells holding an abstract Piece subclassed per type, each with polymorphic canMove; a Game controller for turns, check/checkmate/stalemate, and special moves.
System Design › Low-Level DesignDesign a Notification Service (Low-Level Design)
Low-level design of a multi-channel notification service: Channels as Strategy built by a Factory, reusable Templates, per-user Preferences, plus Decorator retries and Observer delivery tracking.
System Design › Low-Level DesignDesign a Logging Framework (Low-Level Design)
Design a logging framework (Log4j-style) as a showcase of patterns: level filtering via Chain of Responsibility, pluggable Appenders for destinations, Strategy formatters, a Singleton logger, plus thread-safety and async logging.
System Design › Low-Level DesignDesign an ATM (Low-Level Design)
Design an ATM as a State machine (Idle → HasCard → Authenticated → Dispensing), model transactions as polymorphic Command classes, and dispense cash with a Chain of Responsibility over denominations — with the correctness details interviewers probe.
System Design › Low-Level DesignDesign Tic-Tac-Toe (Low-Level Design / OOD)
Design Tic-Tac-Toe in an LLD interview with extensibility in mind: Game/Board/Player/Piece classes, O(N) win-checking with running row/column/diagonal counts, and designing for N×N and other grid games.