Uber Freight SWE III Interview Experience

uber freight logo
uber freight
· SWE 3
August 21, 2026 · 0 reads

Summary

I shared my interview experience for the Uber Freight SWE 3 position, which included DSA, low‑level design, and high‑level design rounds.

Full Experience

Uber Freight SWE 3 Interview Experience

Sharing my recent interview experience for the Uber Freight SWE 3 position.

Round 1 - DSA

The problem was based on a car and a group of riders.

There are N riders, and for each rider we are given two values, L[i] and H[i].

If k riders are selected, then every selected rider should satisfy:

L[i] <= k - 1 <= H[i]

Here, k - 1 represents the number of other riders traveling with that particular rider.

The objective is to maximize the number of riders who can travel together while satisfying the condition for every selected rider.

Example:

N = 5

L = [0, 1, 1, 2, 2]
H = [1, 2, 2, 4, 4]

Answer = 3

The expected time complexity was O(N).


Round 2 - LLD

The question was to design a basic file system supporting operations such as:

  • mkdir
  • ls

The interviewer was primarily interested in the design rather than the implementation.

We discussed the entities/classes required, their relationships, and how the operations would work.

We were expected to:

  • Identify the main entities
  • Define the relationships between files/directories
  • Explain how mkdir would create a directory
  • Explain how ls would retrieve the contents
  • Draw the corresponding entity/class diagram

No working code was required.


Round 3 - HLD

The final round was a distributed URL shortener design.

The discussion focused on designing the system to work reliably at large scale.

Some of the areas discussed were:

  • URL shortening and redirect APIs
  • Generating unique short URLs
  • ID/code generation
  • Database selection
  • Caching
  • Handling high read traffic
  • Database partitioning/sharding
  • Collision handling
  • Expiration of shortened URLs
  • Fault tolerance and availability
  • Scaling the system horizontally

Overall, the interview process covered DSA, LLD, and HLD, with each round testing a different aspect of problem‑solving and system design.

Interview Questions (3)

1.

Maximum Riders Selection

Data Structures & Algorithms

Given N riders, each with a lower bound L[i] and an upper bound H[i]. Select a subset of riders of size k such that for every selected rider i, the condition L[i] <= k - 1 <= H[i] holds (where k - 1 is the number of other selected riders). Return the maximum possible k. Expected time complexity: O(N).

2.

Basic File System Design

System Design

Design a basic file system that supports mkdir and ls operations. Identify the main entities/classes (e.g., File, Directory), define their relationships, and explain how mkdir creates a directory and how ls lists directory contents. A class diagram is expected, but no working code is required.

3.

Distributed URL Shortener System Design

System Design

Design a distributed URL shortener service that can handle large scale traffic. Discuss API design for shortening and redirecting URLs, unique short URL generation, ID/code generation strategies, database selection, caching, handling high read traffic, sharding/partitioning, collision handling, expiration of URLs, fault tolerance, availability, and horizontal scaling.

📣 Found this helpful? Please share it with friends who are preparing for interviews!

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!