I applied through an employee referral. I interviewed at Uber (Pittsburgh, PA) in Feb 2017
Interview
I was given a 30-minute phone interview during which I answered most of the questions (I missed one or two). Two days later I received an email request asking me to do a "homework assignment" within 7 days. I completed and submitted it on the fifth day (took my time in doing so) and was notified the next morning that I was invited to their office for interviews. I was offered Uber credits to get me to-and-from the location but did not manage to use them successfully, as I was unfamiliar with the product before the interviews took place. I arrived at 11am and did four hour-long interviews with engineers from various teams, including one who is now my manager. Two interviewers merely wanted to get to know me and get a sense of my experience, seeing if I was a fit for their team. These interviews were mutual conversations where their experiences sold me on whether or not I wanted to work here. The other two interviews were largely conversational, but with one technical question each. After some back-and-forth work, I managed to solve both problems reasonably and left the interviews feeling confident. I was told the next day that I would be made an offer based on my experience (but had not yet been made the offer). Unfortunately, I was then told that a upper-level management felt my interviews had been not technical enough, and that I had to have one more technical interview (ugh!). Two days later, I traveled to their office again and had my final interview where I was asked the question below about defining, storing, and retrieving structs.
Ultimately I had a good experience, where it paid to know my domain thoroughly. Uber ATG's interview process was formal but with an informal/personal feeling to it, only marred by some disorganization that I am now trying to help them resolve for future interviewees.
Interview questions [1]
Question 1
(Whiteboard question, written in C): You have a homogeneous fixed-size data structure ("arena") to house structs that should do X (vague description). Define the struct, a function that stores it in the arena, and a function that retrieves it from the arena.
Very smooth, interviewers were friendly, on-site and all interviews in the same day. Managed to grab lunch and talk about the company culture. Good guidance throughout the process. Two coding, two system design, one bar raiser, one hiring manager.
Interview questions [1]
Question 1
Something about bus stops on a map, compute positions from an API
I applied online. I interviewed at Uber in May 2026
Interview
The interview process begins with an initial BFS screening to evaluate overall fit and relevant experience, followed by three virtual onsite interviews that focus on coding ability, an in-depth discussion of technical background and past projects, as well as behavioral and collaboration-related questions to assess communication and teamwork skills.
Software Engineer applicants have rated the interview process at Uber with 3.2 out of 5 (where 5 is the highest level of difficulty) and assessed their interview experience as 47% positive. To compare, the company-average is 49.6% positive. This is according to Glassdoor user ratings.
Candidates applying for Software Engineer roles take an average of 20 days to get hired, when considering 430 user submitted interviews for this role. To compare, the hiring process at Uber overall takes an average of 24 days.
Common stages of the interview process at Uber as a Software Engineer according to 430 Glassdoor interviews include:
Phone interview: 42%
One on one interview: 20%
Skills test: 14%
Presentation: 7%
Group panel interview: 5%
Background check: 4%
Personality test: 4%
Other: 2%
IQ intelligence test: 1%
Drug test: 1%
Here are the most commonly searched roles for interview reports -