Uber | Software Engineer | Interview Experience
Interview Date: Not specified
Result: Not specified
Difficulty: Not specified
Interview Process
I had a technical phone screen with Uber for a software engineering position. The interview lasted about 30 minutes. The interviewer started with some background questions about my experience and projects. After that, he presented a coding challenge:
“Given a grid, where some cells are blocked, calculate the minimum distance from the start point to the endpoint considering only the open cells.”
I was asked to explain my thought process before jumping into coding. I discussed the use of BFS (Breadth-First Search) to explore the grid and find the shortest path. Once I began coding, the interviewer asked various questions about edge cases, such as handling blocked paths or large grids.
In the end, I was asked to optimize the space complexity of my solution. I outlined how a priority queue or a simple queue could help minimize space usage while maintaining efficiency. We ran a couple of tests on the code, and I felt good about my performance overall, although I realized I could have handled a few edge cases better. The interviewer wrapped up by asking if I had any questions about the company or the team. Overall, I felt the interview went smoothly, and I’m looking forward to hearing back about next steps.
Technical Questions
- Robot Grid Distance Challenge (BFS, Graph, DFS)
Tips & Insights
- Be prepared to discuss your thought process and edge cases during coding challenges.
- Familiarize yourself with optimization techniques for space and time complexity.