Uber Data Engineer Interview Questions (2026)
Prepare for your technical rounds at Uber with 9+ reported questions across SQL, Apache Spark, Python, and System Design. Compare typical candidate answers against FAANG 9/10 benchmarks, and test your own solutions with instant AI feedback.
Interview Topic Weightage at Uber
Based on verified interview loopsUnlocked FAANG-Calibrated Answer Rubric (Top 3 Tested Questions)
- •Structured delivery following Problem Formulation -> Execution Plan -> Failure Recovery
- •Concrete parameters: partition keys, join strategies, memory limits, and I/O costs
- •Explicit trade-off evaluation (e.g. storage cost vs query latency, exactly-once overhead)
Complete Uber Question Vault (6 Questions)
Showing 6 of 6Build an executive dashboard for reporting.
**Architecture**: Define KPIs with stakeholders. Source data—pipeline to curated layer. Design schema (star/snowflake). Build pipeline (idempotent, incremental). Visualize (Tableau, Looker). Refresh schedule (daily/hourly). **Key**: Actionable metrics; clean design; filters and drill-downs. **Scalability**: Pre-aggregate for large datasets; use materialized views....
Write a function to find the longest palindromic substring in a given string.
**Expand Around Center:** For each center (char or between chars), expand while palindromic. O(n²) time, O(1) space. Manacher's = O(n) but complex. def longest_palindrome(s): def expand(l, r): while l >= 0 and r < len(s) and s[l] == s[r]: l -= 1; r += 1 return s[l+1:r] return max((expand(i,i) or expand(i,i+1) for i in range(len(s))), key=len, default='')
Given a table with sales data, write a query to find consecutive days with decreasing revenue.
**LAG approach**: WITH t AS (SELECT date, revenue, LAG(revenue) OVER (ORDER BY date) AS prev_rev FROM sales) SELECT date, revenue FROM t WHERE revenue < prev_rev AND prev_rev IS NOT NULL. **Consecutive pairs**: Self-join ON a.date = b.date + 1 WHERE a.revenue < b.revenue. **N consecutive**: Extend with multiple LAG or recursive pattern....
Write a query to find the top three customers by total revenue within each region.
SELECT * FROM (SELECT customer_id, region, SUM(revenue) AS total, RANK() OVER (PARTITION BY region ORDER BY SUM(revenue) DESC) rn FROM orders GROUP BY customer_id, region) WHERE rn <= 3. **Why**: Aggregate then rank per region. RANK or DENSE_RANK per tie rule....
Write a query to find the total number of rides per driver in the last 30 days.
To find the total number of rides per driver in the last 30 days, you need to filter the rides table by ride date and then aggregate the count of rides for each driver id . Mechanics and Why This…
Explain how Spark handles data partitioning and the role of shuffles in performance tuning.
**Why it matters**: At scale, design choices directly impact reliability, latency, and cost. Wrong decisions compound across jobs and teams. Spark partitioning: data is divided into partitions; each partition maps to a task. Default partition count from input or 200. Shuffle repartitions by key (hash or range). Shuffles are expensive—network and disk I/O....
Stop Guessing If Your Answers Clear the Bar at Uber
DataEngPrep’s AI evaluates your real answers against strict FAANG hire rubrics. Check accuracy, optimize shuffle partitions, detect edge case omissions, and receive an instant 9/10 rewrite before stepping into your real interview loop.
Similar Tier Companies Hiring Data Engineers
Explore interview loops with overlapping system design and SQL standards.
Frequently Asked Questions About Uber Data Engineering Interviews
What topics are asked most frequently in Uber data engineering interviews?▼
Technical interviews at Uber heavily emphasize SQL and System Design/Architecture, accounting for the majority of technical questions in our repository of 9+ verified interview questions. Candidates should expect hands-on rounds testing query optimization, data skew mitigation, and end-to-end pipeline architecture.
How deep do Uber interviewers go on Apache Spark, SQL, and system design?▼
Interviewers at Uber probe far beyond syntax. They expect candidates to discuss Spark DAG execution plans, shuffle partitions, join selection strategies (broadcast hash vs shuffle sort-merge), and handling un-even data distributions. In system design, emphasis is placed on fault tolerance, backfilling, and SLA preservation under high data volume.
What is the typical technical interview loop format for Data Engineers at Uber?▼
The Uber interview process typically consists of: 1) Initial Recruiter Screen (30 mins), 2) Technical Phone Screen focusing on live SQL and data manipulation (45-60 mins), followed by a 4-5 round Virtual Onsite covering SQL & Coding, Distributed Pipeline Architecture, Data Modeling, and a Behavioral/Bar-Raiser session.
How can I practice Uber data engineer interview questions with AI feedback?▼
You can practice directly on DataEngPrep.tech. Select any question from the Uber library, submit your answer, and receive an instant FAANG-calibrated evaluation scored across accuracy, technical depth, communication, and completeness, complete with an interview-ready model answer rewrite.