SOLID Principles
- Single Responsibility Principle
- Single Responsibility: Refactor UserService
- Open/Closed Principle
- Open/Closed: Refactor PaymentProcessor
- Liskov Substitution Principle
- Liskov Substitution: Refactor the Account Hierarchy
- Interface Segregation Principle
- Interface Segregation: Split the OfficeDevice Interface
- Dependency Inversion Principle
- Dependency Inversion: Inject the OrderRepository
Design Patterns
- Singleton Pattern
- Singleton: Make Logger a Single Shared Instance
- Factory Method Pattern
- Factory Method: Centralise Shape Creation
- Builder Pattern
- Builder: Refactor the EmailMessage Constructor
- Adapter Pattern
- Adapter: Wrap LegacyWeatherSdk in a WeatherProvider
- Decorator Pattern
- Decorator: Wrap a Notifier with Logging and Retries
- Strategy Pattern
- Strategy: Refactor the Checkout Discount Engine
- Observer Pattern
- Observer: Refactor OrderService Notifications
- Chain of Responsibility Pattern
- Chain of Responsibility: Build a Purchase Approval Chain
Interview Design Problems
- Design an In-Memory Pub/Sub System
- Design a Bounded Blocking Queue
- Design an In-Memory File System
- Design a Cron Job Scheduler (Virtual Clock)
- Design Tic-Tac-Toe
Design patterns,
drawn before they're coded.
A principles-first course for the low level design (LLD) and machine coding round: object-oriented design (OOD) with the five SOLID rules, the GoF patterns, and the design problems every interviewer reaches for. You sketch the class diagram first, then implement it in a real Java editor where hidden behaviour tests grade the design, not just the loops.
Package includes: Coding Interview Patterns + Low Level Design Course
Diagram first.
Then prove it in Java.
Pattern, in plain English
Every pattern opens with the problem it exists to solve, written like a colleague explaining it rather than a textbook quoting GoF.
Class diagrams that talk
Annotated UML for every pattern and every design problem. Arrows are labelled, stereotypes are explained, and no notation is left dangling.
Hidden behaviour tests
Implement Parking Lot or Pub/Sub in a Java editor, and a hidden harness grades the behaviour rather than the syntax. You find out fast whether the design holds.
The skills that show up
in every LLD round.
The bar at most product companies for an LLD interview: name the pattern, draw the diagram, write the classes, defend the trade-offs. This course gets you to all four.
Principles, patterns, practice.
Click any chapter to expand.
- 1Single Responsibility PrincipleCEasy
- 2Single Responsibility: Refactor UserServicePMedium
- 3Solution: Single Responsibility: Refactor UserServiceSMedium
- 4Open/Closed PrincipleCEasy
- 5Open/Closed: Refactor PaymentProcessorPMediumPremium
- 6Solution: Open/Closed: Refactor PaymentProcessorSMediumPremium
- 7Liskov Substitution PrincipleCEasy
- 8Liskov Substitution: Refactor the Account HierarchyPMediumPremium
- 9Solution: Liskov Substitution: Refactor the Account HierarchySMediumPremium
- 10Interface Segregation PrincipleCEasy
- 11Interface Segregation: Split the OfficeDevice InterfacePMediumPremium
- 12Solution: Interface Segregation: Split the OfficeDevice InterfaceSMediumPremium
- 13Dependency Inversion PrincipleCEasy
- 14Dependency Inversion: Inject the OrderRepositoryPMediumPremium
- 15Solution: Dependency Inversion: Inject the OrderRepositorySMediumPremium
The designs interviewers keep asking.
Each problem comes with a Java scaffold and a hidden test harness that grades the behaviour of your design.
Two courses, one unlock.
Coding plus Low Level Design, together.
The pack covers Coding Interview Patterns and the Low Level Design course end to end: every principle, every pattern, and every capstone with its hidden tests.