Uber Interview Questions
- DSA
- LLD
- HLD

Q1: Number of Islands
Given a grid of 0s and 1s, count the number of distinct islands using DFS/BFS.
Q2: LRU Cache
Design a data structure for LRU cache with get and put operations in O(1) time.
Q3: Top K Frequent Elements
 Find the k most frequent elements in an array.
Q4: Merge Intervals
 Merge overlapping intervals from a collection of intervals.
Q5: Two Sum
 Find two numbers in an array that add up to a target.
Q6: Product of Array Except Self
Build an array where each element is the product of all elements except itself.
Q7: Container With Most Water
Find two lines which together with the x-axis forms a container, holding the most water
Q8: Longest Substring Without Repeating Characters
Find the length of the longest substring without repeating characters.
Q9: Course Schedule
Detect cycles in a directed graph to determine if all courses can be finished.
Q10: Clone Graph
Clone an undirected graph using BFS/DFS.
Q11: Kth Smallest Element in a BST
Find the kth smallest element in a Binary Search Tree.
Q12: Meeting Rooms II
Find the minimum number of meeting rooms required.
Q13: Word Search
 Determine if a word exists in a 2D character grid.
Q14: Random Pick with Weight
Implement random pick according to given probabilities.
Q15: Spiral Matrix
Traverse a matrix in a spiral order
Q16: Evaluate Division
Solve equations like a/b = 2.0 using a graph.
Q17: Maximize Amount After Two Days of Conversions
Optimize conversion scenarios for profits.
Q18: Alien Dictionary
Find order of characters in an alien language.
Q19: Construct Quad Tree
Construct quad tree from a 2D binary grid.
Q20: Squares of a Sorted Array
Return an array of squares sorted in non-decreasing order.
Q21: Longest Continuous Subarray With Absolute Diff
Find the longest subarray with the absolute difference less than or equal to a given limit.
Q22: Serialize and Deserialize Binary Tree
Implement serialization and deserialization for binary trees.
Q23: Find Median from Data Stream
Maintain structure for fast median retrieval.
Q24: Design Hit Counter
Design a counter that counts the number of hits in the last 5 minutes.
Q25: Basic Calculator II
Evaluate a simple expression string with +, -, *, / operators.
Q1. Design LRU Cache
Implement the classes to handle LRU eviction.
Q2. Elevator System
Design a system to manage multiple elevators, handling requests efficiently
Q3. Parking Lot
Model and code a parking lot management system.
Q4. Rate Limiter
Design an API Rate Limiter (like Token Bucket or Sliding Window).
Q5. Vehicle Management
Model adding, removing, and assigning vehicles.
Q6. Splitwise
Implement logic for bill splitting and group calculations.
Q7. Social Media Feed
Design the backend for a news feed, focusing on class structure and data flow.
Q8. Ride Sharing Matching Engine
Design the dispatch service for matching rides.
Q9. File System
Implement commands for a basic file system structure.
Q10. Library Management System
Create class diagrams and code for book, user, transaction management.
Q11. Snake Game
Build logic for a snake moving in a grid, eating food, and handling collisions.
Q12. Multi-threaded Job Scheduler
Implement a job scheduler capable of running jobs in parallel.
Q13. Movie Ticket Booking
Model seat selection, booking, and cancellation processes.
Q14. Logging System
Code for logging events with ability to filter and search logs.
Q15. Cab Allocation
Assign cabs to riders based on location and priority.
Q16. Custom HashMap
Implement your own hash map with collision handling.
Q17. Bounded Blocking Queue
 Implement a thread-safe bounded blocking queue.
Q18. Distributed Lock Service
Design a lock manager for distributed resources.
Q19. Food Delivery System
Structure classes to handle orders, deliveries, and restaurants.
Q20. Notification Service
Implement services for sending app and SMS notifications.
Q21. Thread Pool
 Design a system to manage a pool of worker threads.
Q22. Least Recently Used Queue
Model LRU eviction logic in classes.
Q23. Transaction Management
Build transaction logs and rollback/commit logic.
Q1. Design Uber (Ride-Sharing Service)
High-level architecture, components, data flow, scaling.
Q2. Global Notification System
Architecture for push notifications to millions of users in real time.
Q3. Real-time City Monitoring Tool
Design dashboards and systems for metrics aggregation.
Q4. Distributed Cache
Design a scalable cache system for fast retrievals by multiple services.
Q5. Payment Gateway
Architecture to handle real-time payments, fraud detection, and concurrency.
Q6. Rate Limiting Service
Design to handle API rate limits globally.
Q7. Google Maps/Navigation System
Large scale location-based query service with routing.
Q8. Chat/Messaging App
Messaging delivery guarantees, scaling chat rooms, user management.
Q9. Video Streaming Platform
Support live and recorded video streaming, load balancing.
Q10. Food Delivery Logistics
Design order assignment, delivery tracking, and ETA estimations.
Q11. Group Ride Service
Scale ride-matching for multiple users sharing a trip.
Q12. Ad Server
Handle ad selection and serving for millions of requests per second.
Q13. Distributed Logging System
Gather, store, and analyze logs at scale.
Q14. Ticket Booking System
Design for handling high concurrency and consistency.
Q15. Distributed File Storage
Scalable file storage with redundancy and access control.
Q16. Metrics Aggregation Service
Collect and aggregate metrics from distributed nodes.
Q17. Geo-based Search Service
Handle spatial queries for nearby resources efficiently.
Q18. Workflow Engine
Design system for controlling and monitoring business workflows.
Q19. Inventory Management System
Scalable system for stock and order management.
Q20. Distributed Transaction System
Maintain data consistency across microservices.
Q21. User Authentication and Authorization
 Scalable, secure access across services.
Q22. Content Delivery Network (CDN)
Design for fast and reliable content delivery worldwide.
Q23. E-commerce Search Service
Design for searching and faceting millions of products.