Uber Freight SWE3 Interview Experience

uber logo
uber
· SWE 3
August 21, 2026 · 1 reads

Summary

I interviewed for the Uber Freight SWE 3 role and completed three rounds: an O(N) DSA problem, a low‑level design of a basic file system, and a system design for a distributed URL shortener.

Full Experience

Uber Freight SWE 3 Interview Experience

Here’s my interview experience for the Uber Freight SWE 3 role.

Round 1 — DSA

We were given a car and N riders.

For every rider, we have two values:

  • L[i] — minimum number of other riders this rider is willing to travel with.
  • H[i] — maximum number of other riders this rider is willing to travel with.

If we select k riders, then every selected rider must satisfy:

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

The goal is to maximize the number of riders that can travel together.

Example:

N = 5

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

Answer = 3

The expected solution was O(N).

The main challenge was identifying the right way to think about the constraints and avoid checking every possible k.


Round 2 — LLD

Design a basic file system supporting operations such as:

  • mkdir
  • ls

The interviewer was mainly interested in the design and approach, rather than implementation.

We discussed:

  • File and directory entities
  • Directory hierarchy
  • How to represent parent-child relationships
  • How mkdir would create a directory
  • How ls would traverse/list the contents
  • Entity/class relationships

We were expected to draw the entity/class diagram and explain the design.

Working code was not expected.


Round 3 — System Design

Design a distributed URL shortener.

The discussion covered the overall distributed architecture and how the system would work at scale.

Important areas to consider:

  • URL shortening API
  • Redirect API
  • Unique short-code generation
  • Database/storage
  • Caching
  • Distributed ID generation
  • Read/write scalability
  • Handling very high redirect traffic
  • Availability and fault tolerance
  • Expiration of URLs
  • Collision handling
  • Database partitioning/sharding

Overall, the rounds were a mix of DSA → LLD → HLD, with increasing emphasis on design depth and scalability.

Difficulty: DSA was mainly about finding the optimal observation, LLD focused on clean object modeling, and the final round tested distributed-system fundamentals and scalability.

I wanted to discuss on compensation part, do you guys any idea of how much they offer?

Interview Questions (3)

1.

Maximum Riders with Constraints

Data Structures & Algorithms

We are given N riders. For each rider i we have two values:

  • L[i] – minimum number of other riders this rider is willing to travel with.
  • H[i] – maximum number of other riders this rider is willing to travel with.

If we select k riders, every selected rider must satisfy L[i] <= k - 1 <= H[i]. The goal is to maximize the number of riders that can travel together.

Example:

N = 5
L = [0, 1, 1, 2, 2]
H = [1, 2, 2, 4, 4]
Answer = 3

Expected solution runs in O(N).

2.

Basic File System Design

System Design

Design a basic file system that supports operations such as mkdir and ls. Discuss file and directory entities, hierarchy, parent‑child relationships, how mkdir creates a directory, how ls lists contents, and the overall class diagram.

3.

Distributed URL Shortener Design

System Design

Design a distributed URL shortener system. Consider API for shortening URLs and redirecting, unique short‑code generation, storage, caching, distributed ID generation, read/write scalability, handling high redirect traffic, availability, fault tolerance, URL expiration, collision handling, and database sharding/partitioning.

📣 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!