Uber's India offices in Bengaluru and Hyderabad are among the company's most important engineering centers globally. The Bengaluru office works on Uber's core platform (ride matching, driver location, maps), while Hyderabad focuses on Uber Eats and financial systems. For Indian engineers, Uber India offers NASDAQ-listed RSUs, a collaborative engineering culture, and the opportunity to work on systems that handle millions of real-time events per second. Here is a complete guide to Uber India's interview process, what they look for, and how to prepare.
Uber India's Interview Process: What to Expect
Uber India's software engineer interview process runs 4-5 rounds over 2-4 weeks. Round 1: Online Assessment. A 90-minute HackerRank assessment with 2 LeetCode-style problems. Difficulty: medium. Time per problem: 45 minutes. Do not just pass the tests, write clean, readable code. Uber's reviewers read submitted code, not just check outputs. Round 2 and 3: Technical Phone Screens. Two 60-minute screens with current Uber engineers. Round 2 is DSA-focused: you will code 1-2 problems in a shared document (no IDE). Round 3 is a mix of coding and early system design discussion for senior roles, or a second DSA round for junior roles. Round 4: Virtual On-Site (3-4 rounds). Coding round: 2 problems in 60 minutes, LeetCode medium-hard difficulty. System design round: 60 minutes, usually a problem connected to Uber's domain (design the Uber dispatch system, design a real-time ETA calculator). Behavioral round: 45 minutes using STAR format. Uber's cultural values (customer obsession, make big bold bets, celebrate differences, act like an owner) are explicitly assessed. Hiring Manager round: 30 minutes, project and motivation discussion. The total process takes 3-5 weeks from application to offer.
Coding Questions Uber India Asks
Uber's coding interviews test problem-solving clarity and clean implementation. Common patterns in Uber India's interview question bank. Graph and BFS/DFS: 'Given a city grid where 1 represents a road and 0 represents a building, find the shortest path for a driver to reach a rider using BFS.' Interval and scheduling: 'Given N ride requests with start time, end time, and pickup location, find the maximum number of rides a single driver can complete in a day' (this is an interval scheduling maximisation problem: sort by end time, greedy). Arrays and two-pointer: 'Given the surge pricing multipliers for a 24-hour period, find the contiguous time window of length K with the highest average demand.' String manipulation: 'Parse a driver's GPS log (series of commands: NORTH 5, EAST 3, SOUTH 2) and return the final coordinates and distance from the origin.' Priority Queue and Heap: 'Given a stream of ride requests, always dispatch the nearest available driver' (use a min-heap keyed on distance to rider). Preparation advice: Focus on graph problems (BFS/DFS, Dijkstra), interval problems (scheduling, overlap detection), and heap problems (K-nearest, top-K). These appear more frequently in Uber interviews than at other companies due to the domain.
System Design at Uber India: What They Ask and How to Answer
Uber India's system design rounds use Uber's own products as the subject matter. You are expected to know roughly how ride-sharing works. Design the Uber driver location service: requirements: 1 million active drivers sending location updates every 5 seconds globally. Approach: drivers send WebSocket updates to a location update service. Store current driver locations in Redis Geo (a sorted set using geohash) for sub-millisecond nearest-driver queries using GEORADIUS. Persist locations to a time-series database (InfluxDB or Cassandra) for analytics and ETA model training. Scale: Redis cluster with consistent hashing across 10 nodes handles 200,000 location updates per second. Design the Uber dispatch system: requirements: when a rider requests, find and assign the best available driver in under 2 seconds. Approach: on ride request, query Redis Geo for the nearest 20 drivers. Score each candidate driver (ETA, driver rating, vehicle type match). Send a dispatch request to the highest-scoring driver. If the driver does not accept within 10 seconds, offer to the next candidate. Use a state machine in PostgreSQL (driver states: available, dispatched, in-trip) with optimistic locking to prevent double-assignment. Scale: 100,000 concurrent ride requests per minute peak requires sharded Redis and stateless dispatch API servers. Design a real-time surge pricing system: requirements: increase prices when demand significantly exceeds supply in a geographic area. Approach: aggregate demand (ride requests) and supply (active drivers) per H3 hexagonal cell every 30 seconds using a stream processing pipeline (Kafka + Flink). Calculate surge multiplier as f(demand/supply). Cache surge multipliers in Redis with 30-second TTL. Rider app fetches surge prices on price estimate before booking.
Practise Uber India interview questions with HireStepX. Our AI voice interviewer simulates Uber's coding and system design rounds with immediate coaching on your dispatch system and location service designs.
Practice freeUber India Salary and Culture
Uber India compensation (2026 benchmarks): SWE-1 (0-2 years experience): Rs 30-60 LPA total compensation. SWE-2 (2-5 years): Rs 55-110 LPA total comp. SWE-3 (Senior SWE, 5-8 years): Rs 100-180 LPA total comp. Staff SWE (8+ years): Rs 160-280 LPA. The compensation structure includes a base salary (60-65% of total comp), cash performance bonus (10-15%), and Uber RSUs (UBER, NYSE-listed, 4-year vesting with 1-year cliff). RSUs at Uber India are particularly valuable because UBER stock is publicly listed: liquidity is immediate after vesting, unlike startup ESOPs. Work culture: Uber underwent a significant cultural transformation after 2019. The current values (build with heart, customer obsession, act like an owner) reflect a more collaborative and inclusive environment. Engineers in Bengaluru work on the same codebases as San Francisco and Amsterdam teams, meaning meetings with US colleagues are common (some late-evening calls in IST). Team autonomy is high: Uber uses a strong engineering design review culture where engineers write design documents before implementing large features. Technology at Uber India: Go is Uber's primary language for backend microservices (Uber has one of the largest Go codebases in the world). Python for data science and ML. React and React Native for the rider and driver apps. Kafka for event streaming. Cadence (Uber's open-source workflow orchestration engine, now called Temporal) for long-running workflows.
Frequently asked questions
Explore more