Educative Grokking the Object Oriented Design Interview text overlaying diagram of person and computer components

Grokking the Object Oriented Design Interview [Smash Hit Course by Educative]

Grokking the object oriented design interview (OODI) is something every FAANG-level developer strives for.

However if you’re not experienced in laying down the design of a complex system, you’re going to struggle.

But guess what?

Even seasoned developers grapple with object oriented design interview questions.

Due to the unstructured nature of object oriented design interviews, there’s no standard answer. As a result, many developers find them tough.

And that’s where FAANG interview prep materials come in.

This post contains affiliate links. I may receive compensation if you buy something. Read my disclosure for more details.

Today we’re reviewing the Grokking the Object Oriented Design Interview course on Educative.

This object oriented design course was designed by hiring managers of Google, Facebook, Amazon and Microsoft. It contains handpicked case studies that are regularly asked at FAANG interviews.

In addition, the course enables engineers to handle various object oriented design scenarios with confidence.

An excellent set of problems, I have been asked Parking Lot and Flight Reservation system in two interviews. This course helped me brush up object oriented analysis techniques that I had almost forgotten. Thanks guys for this content.

Billy Hu, Software Engineer at Microsoft

Let’s take a closer look at what this course has to offer.

Looking for some more FAANG interview courses? Check out our review of Grokking the System Design Interview.

Grokking the Object Oriented Design Interview

LessonsCode SnippetsIllustrations
25181108

This FAANG interview prep course is separated into two sections:

  1. Object Oriented Design and UML
  2. Object Oriented Design Case Studies

Section 1: Object Oriented Design and UML

Starting with the basics, you’ll get a refresher on some key object oriented programming concepts:

✅ Objects ✅ Class ✅ Encapsulation

✅ Abstraction ✅ Inheritance ✅ Polymorphism

Object oriented design basics diagram in Grokking the Object Oriented Design Interview on Educative

And from there it covers:

  • Object Oriented Analysis and Design – identify, define, establish, create
  • Unified Modeling Language – visualizing & documenting software system by using a collection of diagrams
  • Use Case Diagrams – what the system does from the user point of view
  • Class Diagram – describe the responsibilities of a system
  • Sequence Diagram – detailed flow for a specific use case
  • Activity Diagrams – model the flow of control from activity to activity
Use-case diagram in FAANG interview prep course Grokking the Object Oriented Design Interview on Educative

Section 2: Object Oriented Design Case Studies

There are 16 design case studies:

Library Manangement
System
Parking LotAmazon Online
Shopping System
Stack Overflow
Movie Ticket
Booking System
ATMAirline Management
System
Blackjack &
Deck of Cards
Hotel Management SystemChessOnline Stock
Brokerage System
Car Rental
System
Restaurant Management
System
LinkedInCricinfoFacebook

Object oriented design projects like these are frequently asked at the OODIs.

So, can we see a sample object oriented design interview question?

Design a Parking Lot

A large amount of information is required with parking lot object oriented design. And Grokking the Object Oriented Design Interview delivers.

Prompt: Let’s design a parking lot.

From there, you’ll face 5 sections:

  • System Requirements
  • Use Case Diagram
  • Class Diagram
  • Activity Diagrams
  • Code

i. System Requirements

This section sets the parameters of the project such as:

✅ floors ✅ entrances & exits ✅ parking tickets ✅ payment types

✅ vehicle capacity ✅ parking spots with vehicle size variance

✅ vehicle types ✅ hourly pricing structure

And much more.

ii. Use Case Diagram

This section addresses main Actors in the system such as:

Admin – responsible for modifying parking lot specs

Customer – receive and pay for parking ticket

Parking Attendant – assist customers with their tasks

System – display messages on info panels, assign and remove vehicles

Design a Parking Lot object oriented design in Grokking the Object Oriented Design Interview course

And from there, you’ll examine the top use cases for parking lot object oriented design:

  • parking floor – add, remove, edit
  • parking spot – add, remove, edit
  • take & scan ticket
  • credit card & cash payment
  • parking rate modifications
  • parking attendant – add, remove

And beyond.

iii. Class Diagram

In this section you’ll observe interfaces such as:

✅ ParkingSpotType ✅ VehicleType ✅ ParkingTicketStatus

And more.

From there, you’ll study a series of classes such as ParkingRate, ExitPanel, and ParkingFloor.

Small section of Class Diagram in Grokking the Object Oriented Design Interview

iv. Activity Diagrams

Activity Diagrams offer a series of potential activities and results based on those activities.

For example, this diagram observes the activity of the ticket being paid:

Activity Diagram of parking lot in Grokking the Object Oriented Design Interview

As you can see, many activities are straightforward.

For example, if the customer inserts the credit card into the card reader, the next step is for the system to read the credit card details.

But there are other activities that have multiple potential outcomes. For example, “Payment successful?” can either be successful or produce an error. This will alter the processes moving forward.

v. Code

There are over 180 code snippets in Java and Python in this course. Each design case study has ample examples.

For example, in Design a Parking Lot you can study the code of the following:

✅ enums and data types ✅ Account, Admin, ParkingAttendant

✅ ParkingSpot ✅ Vehicle ✅ ParkingFloor

✅ ParkingDisplayBoard ✅ ParkingLot

💰 Cost

You can buy the course for $49. Or you can upgrade with a subscription to the entire Educative.io platform:

CostAccess to 165+ CoursesAccess to Learning Tracks
Grokking the Object Oriented Design Interview course$49 / year
Monthly subscription to Educative.io$59/ month
🤩 Best deal! Yearly subscription to Educative.io$21/ month

Check out Grokking the Object Oriented Design Interview here.

Is Grokking the Object Oriented Design Interview Worth It? Conclusion

If you’ve got a FAANG interview coming up, this course is a must.

You’ve got to be ready to accept, navigate and tackle any problem they throw your way.

And with these 16 questions cultivated by actual FAANG interviews, they know what you should expect.

Looking for some more FAANG interview prep? Check out our Grokking the Coding Interview course review.

Up Next: Is Educative Worth It? A Face-Off w/the Other Guys

  1. Is Grokking the Object Oriented Design Interview worth it?

    If you're preparing for a FAANG interview, the Grokking the Object Oriented Design Interview course by Educative is worth it. You'll be presented with 16 design case studies used at actual FAANG interviews. Plus, there are ample code snippets and diagrams you can use to study.

  2. What is parking lot object oriented design?

    Parking lot is a popular design case study in object oriented design. Designing a parking lot, you include UML conventions such as Interface and Class. From there you can focus on more specific details of generalization, inheritance, user interface, association and more. This assigns roles to attendants, drivers, vehicle types, parking spot sizes, credit card machines and much more.

  3. What are some good object oriented design interview questions?

    There are 16 object oriented design interview questions in the course Grokking the Object Oriented Design Interview on Educative.io. The questions were cultivated by interviewers at FAANG companies such as Google, Microsoft and Amazon. They are questions that are asked at actual object oriented design interviews. Some case studies include Parking Lot, Airline Management System, Restaurant Management System and ATM.