PracHub
QuestionsPremiumLearningGuidesCheatsheetNEWCoaches
|Home/Software Engineering Fundamentals/Uber

Design a Parking Garage Object Model

Last updated: May 11, 2026

Quick Overview

This question evaluates object-oriented design, domain modeling, data structure selection, and concurrency control for resource allocation in a multi-level parking garage.

  • medium
  • Uber
  • Software Engineering Fundamentals
  • Software Engineer

Design a Parking Garage Object Model

Company: Uber

Role: Software Engineer

Category: Software Engineering Fundamentals

Difficulty: medium

Interview Round: Onsite

Design an object-oriented model for a multi-level parking garage. The garage should support: - Multiple floors and parking spots. - Different vehicle types, such as motorcycle, car, van, and electric vehicle. - Different spot types, such as motorcycle, compact, large, accessible, and electric-charging spots. - Vehicle entry, ticket creation, spot assignment, vehicle exit, payment calculation, and spot release. - Querying current availability by spot type. Describe the main classes, relationships, methods, and data structures you would use. Discuss how your design would handle spot allocation, pricing, and concurrent entry or exit events.

Quick Answer: This question evaluates object-oriented design, domain modeling, data structure selection, and concurrency control for resource allocation in a multi-level parking garage.

Related Interview Questions

  • Design a Real-Time Top-K Ranking System - Uber (hard)
  • Design a Parking Lot - Uber (medium)
  • Design follow/follower classes - Uber (medium)
  • Design a meeting room reservation API - Uber (medium)
  • Design a Rolling Event Counter - Uber (medium)
Uber logo
Uber
Apr 12, 2026, 12:00 AM
Software Engineer
Onsite
Software Engineering Fundamentals
0
0

Design an object-oriented model for a multi-level parking garage.

The garage should support:

  • Multiple floors and parking spots.
  • Different vehicle types, such as motorcycle, car, van, and electric vehicle.
  • Different spot types, such as motorcycle, compact, large, accessible, and electric-charging spots.
  • Vehicle entry, ticket creation, spot assignment, vehicle exit, payment calculation, and spot release.
  • Querying current availability by spot type.

Describe the main classes, relationships, methods, and data structures you would use. Discuss how your design would handle spot allocation, pricing, and concurrent entry or exit events.

Solution

Show

Comments (0)

Sign in to leave a comment

Loading comments...

Browse More Questions

More Software Engineering Fundamentals•More Uber•More Software Engineer•Uber Software Engineer•Uber Software Engineering Fundamentals•Software Engineer Software Engineering Fundamentals
PracHub

Master your tech interviews with 7,500+ real questions from top companies.

Product

  • Questions
  • Learning Tracks
  • Interview Guides
  • Resources
  • Premium
  • For Universities
  • Student Access

Browse

  • By Company
  • By Role
  • By Category
  • Topic Hubs
  • SQL Questions
  • Compare Platforms
  • Discord Community

Support

  • support@prachub.com
  • (916) 541-4762

Legal

  • Privacy Policy
  • Terms of Service
  • About Us

© 2026 PracHub. All rights reserved.