Grokking the Object Oriented Design Interview

I create this repository as extended version of Grokking the Object Oriented Design Interview course. I add example-codes part for better understanding.


  1. All codes except OOP basics section are not executable.
  2. I use Python for coding demonstration.
  3. I try to write error free codes that’s why in many class and function i just use None or pass
  4. For practice I left coding section empty of Facebook’s Extended Requirement section.

Object-Oriented Design and UML

Object Oriented Basics
Object Oriented Analysis and Design
What is UML?
Use Case Diagrams
Class Diagram
Sequence Diagram
Activity Diagrams

Object Oriented Design Case Studies

Design a Library Management System
Design a Parking Lot
Design Amazon – Online Shopping System
Design Stack Overflow
Design a Movie Ticket Booking System
Design an ATM
Design an Airline Management System
Design Blackjack and a Deck of Cards
Design a Hotel Management System
Design a Restaurant Management system
Design Chess
Design an Online Stock Brokerage System
Design a Car Rental System
Design LinkedIn
Design Cricinfo
Design Facebook – a Social Network

** Sources **

Course Source:
Banner Photo Source: Dribbble