Katkat

Company

Uber interview questions

217 practice questions in the style of Uber's interviews, covering Behavioral & Leadership, Statistics & Math, Coding & Algorithms, Machine Learning, System Design, Data Manipulation (SQL/Python), Analytics & Experimentation, Software Engineering Fundamentals, ML System Design, Product / Decision Making, Product Design & Strategy.

Questions217

9 easy156 medium52 hard

Your progress0/217

Uber interview questions by the numbers

Last updated

Katkat has 217 Uber interview questions. The largest topics are Coding & Algorithms (53%), System Design (12%) and Analytics & Experimentation (10%). By difficulty: 4% easy, 72% medium and 24% hard. The most common round is Technical Screen (47%). Frequent concepts include System Design, Algorithms, Greedy and Data Structures.

Difficulty

  • Easy4% · 9
  • Medium72% · 156
  • Hard24% · 52

Interview rounds

  • Technical Screen47% · 102
  • Onsite41% · 88
  • Online Assessment12% · 26
  • Other0% · 1

Roles

  • Software Engineer63% · 137
  • Data Scientist25% · 54
  • Machine Learning Engineer10% · 21
  • Frontend Engineer1% · 2
  • Backend Engineer0% · 1

Frequent concepts

  • System Design6% · 13
  • Algorithms5% · 11
  • Greedy5% · 11
  • Data Structures5% · 10
  • Causal Inference4% · 9
  • Distributed Systems4% · 9

Showing 61–90 of 217 results

  • This problem tests the ability to design a scalable, low-latency leaderboard system that handles high-frequency write throughput from reviews and supports read-heavy leaderboard queries.

    UberSoftware EngineerSystem DesignOnsite
  • This question tests the ability to design a distributed, low-latency, and fault-tolerant shopping cart service for a high-concurrency food delivery platform.

    UberSoftware EngineerSystem DesignOnsite
  • This problem evaluates your ability to design a distributed system that manages real-time interactions between three distinct user types: customers, restaurants, and couriers, with a focus on geospatial querying and high-concurrency event streaming.

    UberSoftware EngineerSystem DesignTechnical Screen
  • This question tests your ability to design a distributed, highly available system that handles high-read traffic and ensures data integrity for short-URL mappings.

    UberSoftware EngineerSystem DesignOnsite
  • This question evaluates object-oriented design, domain modeling, data structure selection, and concurrency control for resource allocation in a multi-level parking garage.

    UberSoftware EngineerSoftware Engineering FundamentalsOnsite
  • This problem tests object-oriented design principles and the ability to manage resource allocation and concurrency in a multi-threaded environment.

    UberSoftware EngineerSoftware Engineering FundamentalsOnsite
  • This question tests the ability to design a highly available and scalable real-time chat service, focusing on persistent connections, message routing, and reliable delivery mechanisms.

    UberSoftware EngineerSystem DesignOnsite
  • Tests the ability to architect a high-throughput, low-latency geospatial ingestion and query service that tracks millions of moving entities, handles state transitions, and avoids boundary/hot-spot bottlenecks.

    UberSoftware EngineerSystem DesignOnsite
  • This question evaluates a data scientist's competency in end-to-end machine learning system design for spatiotemporal prediction, covering temporal and geospatial feature engineering, model family selection, metric tradeoffs and calibration, selection bias and noise handling, latency and deployment constraints, monitoring, and experiment design.

    UberData ScientistMachine LearningTechnical Screen
  • This question evaluates understanding of data structures and time-windowed counting, performance and memory trade-offs, expiration policies, and concurrency when implementing an in-memory rolling event counter.

    UberSoftware EngineerSoftware Engineering FundamentalsTechnical Screen
  • This problem tests your ability to design a distributed calendar system, focusing on data modeling for recurring events, time zone handling, and frontend state management for a high-concurrency scheduling UI.

    UberFrontend EngineerSystem DesignTechnical Screen
  • This question evaluates a candidate's competency in designing end-to-end machine-learning-based feed ranking systems, including setting ranking objectives, candidate generation and filtering, feature design, model training and serving, and operational concerns like freshness, diversity, and scalability.

    UberMachine Learning EngineerML System DesignTechnical Screen
  • This problem tests your ability to design an in-memory scheduling system that efficiently manages room availability and handles time-interval overlaps.

    UberSoftware EngineerSoftware Engineering FundamentalsOnsite
  • An Uber MLE onsite ML system design question: design a personalized restaurant recommendation system for a food delivery marketplace's home feed. It tests candidate generation and ranking, feature engineering and training data, cold-start and exploration, low-latency serving, and offline/online evaluation, plus marketplace concerns like availability, ETA, diversity, fairness, and business rules.

    UberMachine Learning EngineerML System DesignOnsite
  • This question evaluates a candidate's competency in large-scale system design, covering distributed systems architecture, data modeling, real-time location streaming, matching algorithms, scalability, fault tolerance, and secure payment handling.

    UberSoftware EngineerSystem DesignOnsite
  • This system design question evaluates the ability to architect a large-scale search autocomplete service, testing knowledge of prefix data structures, distributed indexing, and latency-sensitive serving pipelines. It is commonly asked in senior engineering interviews to assess trade-off reasoning between freshness, read performance, and system complexity at scale.

    UberSoftware EngineerSystem DesignOnsite
  • This question evaluates proficiency in online algorithm design under uncertainty, stochastic modeling of ETAs, multi-objective optimization for resource allocation, and streaming data handling relevant to dispatch systems.

    UberData ScientistCoding & AlgorithmsTechnical Screen
  • This question evaluates a candidate's competency in experimental design and statistical inference, covering sample-size and power calculations, the choice between Z and T tests, sequential testing/alpha-spending strategies, and causal-inference planning for non-randomized rollouts.

    UberData ScientistStatistics & MathTechnical Screen
  • This question evaluates a data scientist's competency in experimental design and causal inference for two-sided marketplaces, focusing on interference, partial compliance, metric definition, randomization strategy, instrumentation, estimation, and power calculations within the Analytics & Experimentation domain.

    UberData ScientistAnalytics & ExperimentationTechnical Screen
  • Design an in-memory directory tree supporting iterative path insertion and file lookup using an explicit stack. The problem tests handling of duplicate component names, memory-efficient tree representation, and clarifying ambiguous file search contracts.

    UberSoftware EngineerSoftware Engineering FundamentalsTechnical Screen
  • This question evaluates a candidate's competency in causal experiment design for networked two‑sided marketplaces, focusing on interference and spillover management, cluster randomization choices, metric definition, power/sample‑size calculations, bias‑reduction approaches, and diagnostic checks.

    UberData ScientistAnalytics & ExperimentationTechnical Screen
  • This question evaluates object-oriented design competency, including class modeling, responsibility assignment, relationships (inheritance and composition), and familiarity with design patterns and SOLID principles for representing constraints like spot sizes and vehicle types.

    UberSoftware EngineerSoftware Engineering FundamentalsTechnical Screen
  • This question evaluates a candidate's ability to design a new product feature for a ride-hailing platform and to translate product goals into measurable outcomes, testing competencies in product sense, metric definition, experiment and causal-inference design, segmentation, and two-sided marketplace trade-off analysis.

    UberData ScientistAnalytics & ExperimentationOnsite
  • This question evaluates experimental design, causal inference, A/B testing and statistical power calculation skills, including defining eligibility, unit of randomization, treatment arms, stratification, metric selection with guardrails, handling noncompliance and interference, and interpreting heterogeneous treatment effects.

    UberData ScientistAnalytics & ExperimentationOnsite
  • This question evaluates object-oriented system design and domain modeling skills related to cart operations, item customizations, composable pricing rules (surge, promotions, membership) and producing an itemized receipt.

    UberSoftware EngineerSystem DesignOnsite
  • This question evaluates system design and backend engineering competencies, focusing on data modeling, indexing strategy, concurrency control, transactional correctness, and scalability for a multi-device cart lifecycle and one-time checkout.

    UberSoftware EngineerSystem DesignTechnical Screen
  • This interview question evaluates requirements, scale assumptions, API/data design, architecture, trade-offs, failure modes, and rollout in a realistic interview setting. A strong answer for Design driver heat map and discuss consensus states assumptions, handles edge cases, explains trade-offs, and shows how to validate the result clearly.

    UberSoftware EngineerSystem DesignOnsite
  • This problem tests your ability to design a system for managing directed relationships between users, requiring careful selection of data structures to balance write performance and query latency.

    UberSoftware EngineerSoftware Engineering FundamentalsTechnical Screen
  • Design an in-memory file system supporting path creation (`mkdir`) and directory listing (`ls`). Tests tree-based data structures, path parsing, and clean object-oriented design.

    UberSoftware EngineerSoftware Engineering FundamentalsOnsite
  • This problem tests your ability to distinguish correlation from causation in observational data and to design a robust A/B test to measure the incremental impact of a new rider promotion.

    UberData ScientistAnalytics & ExperimentationTechnical Screen

Uber interview experiences

All 42 →
  • Building a Directory Tree and Traversing It with a Manual StackUber · Software Engineer · Technical Screen · Sep 2026
    Rejected

    The interview lasted 45 minutes. We first went through my resume. I was asked about my most challenging project and the technology stack I normally use, and the interviewer introduced the work of the hiring group. The remaining half hour was for coding. Given a series of file paths, I needed to build a directory tree and find the full path of a file in that tree. Directory names could repeat, but…

  • Matrix Swaps and Infrastructure DesignUber · Software Engineer · Senior+ · Onsite · Sep 2026

    The author describes an Uber infrastructure-backend interview process with a phone screen and three virtual-onsite rounds. The screen asked for a valid sequence of adjacent swaps that arranges a matrix into alternating-direction sorted rows, followed by discussion of reducing the number of operations. The applicant had to create tests and found the time limit demanding. Onsite coding involved rep…

  • 45 Min Coding Plus 15 Min Free-Form ML Design, Onsite Invite Next DayUber · Machine Learning Engineer · Technical Screen · Aug 2026
    In progress

    The phone screen format was 45 min coding + 15 min design. For coding I got the high-frequency "find robot" problem. I discussed the brute force solution with the interviewer, then how to precompute the distances in all four directions to speed it up, and finally wrote the optimized version. The interviewer didn't provide any test cases in HackerRank and didn't ask me to write any either. I only…

  • A Three-Level Robot Path OptimizationUber · Software Engineer · Senior+ · Technical Screen · Aug 2026

    In a grid, a robot needs to move from a starting point to a destination. Each move consumes one unit of battery power. Charging cells are distributed throughout the grid, and when the robot reaches one, its battery is recharged to full. The task is to find an optimal path using the following priorities, compared lexicographically: Minimize the number of charging cells used. Minimize the maximum b…

  • Four Onsite Rounds, All About the Follow-UpsUber · Software Engineer · Onsite · Aug 2026

    Four rounds, questions weren't hard but the pace was really fast Let me lead with the conclusion: Uber's problems really aren't hard, but they move fast. 45 minutes a round, and the interviewer practically wants you to knock out the main problem in 15 minutes so there's a full half hour left for piling on requirements. It felt less like solving problems and more like sitting in a requirements rev…

More companies