Uber | SDE3 Frontend Interview
- Posted
- 13 Aug 2025
Summary
I interviewed for a Senior Frontend Engineer position at Uber, which involved rounds on JavaScript problem solving and Data Structures & Algorithms, including graph problems like Topological Sort and Cycle Detection.
How it went
Uber – Senior Frontend Engineer Interview Experience
Round 1 – JavaScript Problem
Uber Driver question: Implement a chainable JS Class (pickup(), drop(), coffeeBreak()) where coffeeBreak() must always execute first.<br/>new UberDriver()<br/> .pick("Alice", 1)<br/> .drive(5)<br/> .coffeeBreak(3) // always executes first<br/> .pick("Bob", 2)<br/> .status()<br/> .drop()<br/> .rest(2)<br/>
Tested method chaining, promise, and async handling.
Followup Question
Driver can take break anytime but it should execute at beginning only
Round 2 – DSA (Graphs)
Topological Sort (implemented using Kahn’s Algorithm).
Cycle Detection in a Graph (DFS + recursion stack).
Questions asked (3)
- 01
Chainable JS Class with Priority Method
Other
Implement a chainable JS Class (pickup(), drop(), coffeeBreak()) where coffeeBreak() must always execute first. The example usage is:
<br/>new UberDriver()<br/> .pick("Alice", 1)<br/> .drive(5)<br/> .coffeeBreak(3) // always executes first<br/> .pick("Bob", 2)<br/> .status()<br/> .drop()<br/> .rest(2)<br/>
This tests method chaining, promise, and async handling.
Followup Question
Driver can take break anytime but it should execute at beginning only - 02
Topological Sort (Kahn's Algorithm)
Data Structures & Algorithms
Implement Topological Sort using Kahn’s Algorithm.
- 03
Cycle Detection in a Graph (DFS)
Data Structures & Algorithms
Implement Cycle Detection in a Graph using DFS with a recursion stack.
How they prepared
Uber tests JavaScript design patterns + DSA fundamentals.
Strong graph algorithm knowledge is essential.
Even frontend roles have pure algorithm rounds.