Uber SDE 3 Phone Screen

uber logo
uber
SDE 3
November 7, 202525 reads

Summary

I had a phone screen for an SDE 3 role at Uber, which focused on designing an API for scheduling meetings within a fixed set of conference rooms.

Full Experience

I recently had a phone screen for an SDE 3 position at Uber. The interviewer presented a system design problem where I needed to build an API to manage meeting schedules across a predefined set of conference rooms. The core task was to implement a scheduleMeeting(startTime, endTime) method. This method should identify and reserve any available room during the specified time, returning the room's identifier. If no rooms were available for the given time slot, the API should throw an error. The problem statement included several example scenarios using Unix timestamps to demonstrate the expected behavior, such as assigning rooms with overlapping start times, handling fully booked periods, and re-assigning rooms once they become free. The interviewer also specified an expected time complexity of log(meetings) + O(rooms).

Interview Questions (1)

Q1
API Design: Conference Room Meeting Scheduler
System Design

Build an API that can schedule meetings in a predefined set of conference rooms. It should have a method like scheduleMeeting(startTime, endTime) which returns any available room at that time and reserves it or throws an error if no rooms are available.

For example, let's say an Uber building has 3 conference rooms and we start getting requests as follows: scheduleMeeting(1647718624, 1647718731) // assign let’s say room1. scheduleMeeting(1647718624, 1647718931) // same start time, assign room2. scheduleMeeting(1647718624, 1647718431) // assign room3 as same start time. scheduleMeeting(1647718624, 1647768731) // error as no room is available for this time. scheduleMeeting(1647718732, 1647728789) // assign room1 as it became free

We are using Unix timestamps here, for simplicity, we can take integer values as well. Expected Time Complexity: log(meetings) + O(rooms) (since number of rooms are finite). Similar problem: Range Module. There are differences between both problems, but you can take it as a reference.

Discussion (0)

Share your thoughts and ask questions

Join the Discussion

Sign in with Google to share your thoughts and ask questions

No comments yet

Be the first to share your thoughts and start the discussion!