Uber’s online assessment (OA) moves at a pretty fast pace. The questions strike a balance between practical application and complexity, making it a good challenge for those with some coding practice under their belt. I applied for a backend development internship during the fall recruiting season and received the OA invite about a week after submitting my resume. The platform was HackerRank, with two problems to solve in 90 minutes. Compared to other companies that sometimes have three or even four problems, Uber’s OA may seem lighter in quantity, but the difficulty is definitely not low, and the time constraint is tight, requiring strong problem-solving agility.

The first question was a classic variation of the “Merge Intervals” problem, but with a business twist — each interval had a weight, and the task was to merge overlapping intervals while keeping the maximum weight for each merged segment. Although the problem itself wasn’t new, there were many details to watch out for, like how to handle overlapping intervals and how to update and maintain the weights correctly. I spent nearly 40 minutes on this question, mainly struggling with boundary conditions. I recommend practicing variations of such “pattern” problems and not just memorizing templates.

The second question was noticeably tougher. It was graph theory-related and required finding the count of all pairs of nodes that are mutually reachable via bidirectional paths. The problem statement was quite long, simulating a business scenario involving Uber drivers and passengers matching. If you’re not familiar with graph traversal or connected components, this one can be challenging. My approach was to first build the graph, then use DFS to find the size of each connected component, and finally calculate the number of pairs combinationally. The problem wasn’t overly complex logically, but the large amount of information at the start made it difficult to quickly pinpoint the key points, and I wasted some time initially before getting a clear understanding. I suggest practicing these kinds of “long problem statements + simple models” to improve your ability to extract useful information quickly.

Overall, Uber’s OA leans more toward real-world engineering scenarios. While the questions fit within classic algorithm frameworks, they integrate business logic and require careful attention to detail and clean code style. Also, on HackerRank, the system doesn’t give error types when you get stuck, so it’s important to develop good debugging habits and write plenty of unit tests. After finishing the OA, I received an email from HR scheduling a technical interview, which suggests that Uber’s evaluation looks not just at correctness but also efficiency and readability. In summary, Uber’s OA isn’t the hardest out there, but you can’t take it lightly. Besides practicing algorithms, it’s crucial to understand the problem context and real-world scenarios.

Release time:2025-05-29
Recommended quality courses

More News

WeChat QRCode

WeChat

Thank you. Your message has been sent.
Free reservation service
WeChat QRCode

    Other Booking Methods →

      Free reservation service
      Receive job search gift pack
      WeChat QRCode

        Enter information to continue

          Receive job search gift pack