Uber SDE-II Interview Experience
Summary
I completed a multi‑round interview process for an SDE‑II role at Uber in Bengaluru, received strong hire recommendations, and ultimately got an offer.
Full Experience
Education : Tier-1 Current: Tier 1 YOE - 3.7
Company : Uber Location : Bengaluru Level : L4 (SDE-II) Date : April, 2026
Interview rounds: Round 1: BPS (Screening) - In-Person Question - Given a grid with a starting cell, destination cell, normal cells, and charging cells, find the optimal path for a robot to reach the destination. Each move consumes battery, and visiting a charging cell allows the robot to recharge. Optimise the path in this priority order: minimum charging cells used -> minimum battery required -> minimum moves. (Could not find exact question on Leetcode only similar ones) Difficulty - Hard Expectation - Logic overview with dry run, clean, most optimised running solution and some follow ups. Self Verdict - Strong Hire
Round 2: Coding1(DSA) - In-Person Question - Find Median from Data Stream Difficulty - Hard Expectation - Sub-optimal approach followed by optimal approach, clean and running solutions on various test cases. Follow-ups on real life scenarios. Self Verdict - Strong Hire
Round 3: Coding2(LLD) - In-Person Question - Design a Premium Cab Hailing Service For Uber Difficulty - Hard Expectation - Focus on cab allocation logic, clean code, running solution with multithreading scenarios. Self Verdict - Hire
Round 4: HM - Virtual Question - Behavioural and Project Based. Difficulty - Medium Expectation - Collaboration, complexity of projects, working under tight deadlines and pressure. Self Verdict - Strong Hire
Round 5: HLD - Virtual Question - Stock Price Change Alert System Difficulty - Very Hard Expectation - Push vs Pull mechanism, DB design, API design, deep dive and tradeoffs. Self Verdict - Hire
Overall Experience One of the most fun and grilling interview experiences at the same time. The first three rounds were conducted in person, which made it quite a different experience altogether. The entire process took around 2 months. I got a referral, after which the recruiter reached out to me.
Key Takeaways DSA - Expect variations of standard LeetCode patterns. Graphs (DFS, BFS, DSU) seem to be one of Uber's favourite topics. The difference between a Hire and Strong Hire is largely dependent on how well you handle follow-ups. LLD - Focus on implementing a fully running solution. The interviewer will allow you to check syntax, but it can result in a context switch. Hence, my suggestion would be to master one language for LLD rounds. HM - This is a round where you have a lot of control over the direction of the discussion. The complexity and structure of how you present your projects can make a big difference. My approach was to explain projects in a way that naturally covered most of the major behavioural questions. Always use the STAR framework, along with concrete examples, when answering behavioural questions. HLD - One of the toughest rounds, but Uber tends to ask from a relatively common set of questions, which can make preparation easier. Focus heavily on trade-offs and reasoning, as there is rarely a single correct solution. Uber also focuses a lot on handling high-volume data, so topics like Spark and Flink are worth preparing well.
It took around 3 weeks after the last round for the recruiter to reach out to me with the offer.
Interview Questions (4)
Robot Grid Path Optimization
Given a grid with a starting cell, a destination cell, normal cells, and charging cells, find the optimal path for a robot to reach the destination. Each move consumes battery, and visiting a charging cell allows the robot to recharge. Optimise the path in this priority order: 1) minimum charging cells used, 2) minimum battery required, 3) minimum moves.
Find Median from Data Stream
Design a data structure that supports adding integer numbers from a data stream and finding the median of all elements added so far.
Design a Premium Cab Hailing Service
Design a premium cab hailing service for Uber, focusing on cab allocation logic, handling concurrent requests, and ensuring a clean, running solution with multithreading considerations.
Stock Price Change Alert System
Design a system that alerts users to stock price changes. Discuss push vs pull mechanisms, database design, API design, and trade‑offs involved in handling high‑volume data.