SDE-2 Frontend Interview Uber

uber logo
uber
SDE-2 Frontend
July 17, 20251 reads

Summary

I interviewed for an SDE-2 Frontend role at Uber, undergoing multiple coding rounds, Low-Level Design, High-Level Design, and a Hiring Manager discussion, but was ultimately rejected.

Full Experience

Ubers Interview:-

Coding 1:-

Question 1:-

#Uber's trip history system has encountered a malfunction ing a passenger's journey to be fragmented into multiple unordered segments. Each segment cares a portion of the trip sequence, but the correct chronological order of these segments is unknow

Lily, a data engineer at Uber, has been assigned the tas of restoring the complete trip history. She must analyze the given segments, identify overlapping metails, and piece them together in the correct order to reconstruct the original journey.

Solve jt in js #Your task is to design an efficient algorithm to ass sequence from the unordered segments.

Its n*m aarray

Question 2:-

"Consider you are in an IPL auction for selection of players and there are few (even number of players) left over players (displayed on the screen in a row) who needs to be picked between 2 teams. Each player has a respective score number assigned which suggests how good that player is. Each team selector gets alternating turns. In each turn, a selector have to select either ist or last player from the screen.
Determine the maximum possible score you can win if we move first. P.S Opponent selector is as clever as you" "Sample 1
Input Surya kumar- 5, Ashwini 3, Pandiya-7, Virat 10:: (5, 3, 7,10) Output: 5+10 = 15

Sample 2 Input Surya kumar- 8, Ashwini - 15, Pandiya-3, Vrat- 7 :: (8, 15, 3, 7}

Coding Round 2:-

Create a queue that allows concurrent processing of async tasks up until a limit. Tasks can be added to it after creation at any time. The queue has the following signature: /* type Task any; type Queue = (ProcessorFn, OnCompleteFn, concurrency: number) => QueueObject I type QueueObject = { drain: (error?: Error) => void push: (Task or Array, CallbackFn) => void error: (error?: Error, Task) => void unshift: (Task or Array, CallbackFn) => void
} type ProcessorFn = (Task, CallbackFn) => void type OnCompleteFn = (data: any, error: Error, Task) => void type CallbackFn = (error?: Error) => void

LLD:-

Render C shape squares (25px) a row. A square would have a border black and bg color white. Keep space of 10px between ares Clicking on a square will ange its color to green.
An unwinding process would start once all 3 squares are green. It will turn them back to white in the reverse order of click. Unwinding should decolor boxes one by one with a delay of 1 second between them

HLD:-

Design Google Calender

HM:- Genral Discussions on previous projects and normal HM questions.

Verdict:- Rejected

Interview Questions (5)

Q1
Reconstruct Trip History from Fragmented Segments
Data Structures & Algorithms

#Uber's trip history system has encountered a malfunction ing a passenger's journey to be fragmented into multiple unordered segments. Each segment cares a portion of the trip sequence, but the correct chronological order of these segments is unknow # Lily, a data engineer at Uber, has been assigned the tas of restoring the complete trip history. She must analyze the given segments, identify overlapping metails, and piece them together in the correct order to reconstruct the original journey. Solve jt in js #Your task is to design an efficient algorithm to ass sequence from the unordered segments. Its n*m aarray

Q2
Maximize Score in IPL Auction Game
Data Structures & Algorithms

"Consider you are in an IPL auction for selection of players and there are few (even number of players) left over players (displayed on the screen in a row) who needs to be picked between 2 teams. Each player has a respective score number assigned which suggests how good that player is. Each team selector gets alternating turns. In each turn, a selector have to select either ist or last player from the screen. Determine the maximum possible score you can win if we move first. P.S Opponent selector is as clever as you" "Sample 1 Input Surya kumar- 5, Ashwini 3, Pandiya-7, Virat 10:: (5, 3, 7,10) Output: 5+10 = 15 Sample 2 Input Surya kumar- 8, Ashwini - 15, Pandiya-3, Vrat- 7 :: (8, 15, 3, 7}

Q3
Concurrent Async Task Queue
System Design

Create a queue that allows concurrent processing of async tasks up until a limit. Tasks can be added to it after creation at any time. The queue has the following signature: /* type Task any; type Queue = (ProcessorFn, OnCompleteFn, concurrency: number) => QueueObject I type QueueObject = { drain: (error?: Error) => void push: (Task or Array, CallbackFn) => void error: (error?: Error, Task) => void unshift: (Task or Array, CallbackFn) => void } type ProcessorFn = (Task, CallbackFn) => void type OnCompleteFn = (data: any, error: Error, Task) => void type CallbackFn = (error?: Error) => void

Q4
Interactive C-Shape Squares UI
System Design

Render C shape squares (25px) a row. A square would have a border black and bg color white. Keep space of 10px between ares Clicking on a square will ange its color to green. An unwinding process would start once all 3 squares are green. It will turn them back to white in the reverse order of click. Unwinding should decolor boxes one by one with a delay of 1 second between them

Q5
Design Google Calendar
System Design

Design Google Calender

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!