Data Scientist Data Manipulation (SQL/Python) Interview Questions
Practice 550 real Data Manipulation (SQL/Python) interview questions for Data Scientist roles. From companies including Meta, Amazon, TikTok, Capital One, DoorDash.

"I got asked a hardcore MCM DP question and I saw it on PracHub as well. Solved that question in 5 minutes. Without PracHub I doubt I could solve it in 5 hours. Though somehow didn't get hired, perhaps I guess I solved it too fast? /s"

"Believe me i'm a student here jn US. Recently interviewed for MSFT. They asked me exact question from PracHub. I saw it the night before and ignored it cause why waste time on random sites. I legit wanna go back and redo this whole thing if I had chance. Not saying will work for everyone but there is certainly some merit to that website. And i'm gonna use it in future prep from now on like lc tagged"

"10 years of experience but never worked at a top company. PracHub's senior-level questions helped me break into FAANG at 35. Age is just a number."

"I was skeptical about the 'real questions' claim, so I put it to the test. I searched for the exact question I got grilled on at my last Meta onsite... and it was right there. Word for word."

"Got a Google recruiter call on Monday, interview on Friday. Crammed PracHub for 4 days. Passed every round. This platform is a miracle worker."

"I've used LC, Glassdoor, and random Discords. Nothing comes close to the accuracy here. The questions are actually current — that's what got me. Felt like I had a cheat sheet during the interview."

"The solution quality is insane. It covers approach, edge cases, time complexity, follow-ups. Nothing else comes close."

"Legit the only resource you need. TC went from 180k -> 350k. Just memorize the top 50 for your target company and you're golden."

"PracHub Premium for one month cost me the price of two coffees a week. It landed me a $280K+ starting offer."

"Literally just signed a $600k offer. I only had 2 weeks to prep, so I focused entirely on the company-tagged lists here. If you're targeting L5+, don't overthink it."

"Coaches and bootcamp prep courses cost around $200-300 but PracHub Premium is actually less than a Netflix subscription. And it landed me a $178K offer."

"I honestly don't know how you guys gather so many real interview questions. It's almost scary. I walked into my Amazon loop and recognized 3 out of 4 problems from your database."

"Discovered PracHub 10 days before my interview. By day 5, I stopped being nervous. By interview day, I was actually excited to show what I knew."

"I recently cleared Uber interviews (strong hire in the design round) and all the questions were present in prachub."
"The search is what sold me. I typed in a really niche DP problem I got asked last year and it actually came up, full breakdown and everything. These guys are clearly updating it constantly."
Load and visualize large CSV robustly
You're screen-sharing in a HackerRank environment with Python 3, pandas, numpy, seaborn, and matplotlib available. You are given a single file data.cs...
Write SQL to localize trading drop contributors
Use the schema and samples below. Unless stated, treat a user as active on a day if they attempted any order (any status). Dates are inclusive. Schema...
Write SQL for DAU and first-purchase conversion
Today is 2025-09-01. Using the schema and sample data below, write a single ANSI-SQL query that returns one row per day for the last 7 days (2025-08-2...
Write SQL for cold-complaint diagnostics with LAG/QUALIFY
Using BigQuery/Snowflake-style SQL (CTEs required; use LAG and QUALIFY), answer the tasks below. Assume 'today' is 2025-09-01. Schema and small sample...
Write SQL and Pandas for Uber Trips
Assume 'today' = 2025-09-01. You are given the following schema and small ASCII samples. Tables - riders(rider_id, name, signup_date) - drivers(driver...
Query seven-day conversion with windows and dedupe
Assume all timestamps are UTC. Treat "today" as 2025-09-01. Define "last 7 days" as the inclusive window [2025-08-26 00:00:00, 2025-09-01 23:59:59]. S...
Write monthly touches and last-touch SQL
You have two tables tracking marketing touches and downstream conversions. Write SQL to answer the three prompts below. Assume a warehouse like Postgr...
Write SQL and Python for transaction analytics
You are given user and transaction data. Part A (SQL): Use a join and window functions to answer the prompts below using the following schema and samp...
Compute per-player daily cumulative games with windows
Write a SQL query to output, for each player_id and each calendar date present in the data, the cumulative number of games played up to and including ...
Design metrics and write SQL for a case
Case: Measure the impact of outreach on subsequent purchases and diagnose anomalies. Define your primary metric and write SQL. Schema and tiny samples...
Write SQL to quantify outage revenue loss
A database outage blocked premium membership registrations from 2025-01-01 to 2025-03-31 (inclusive). Members intend to start on intended_start_date, ...
Design a reproducible data pipeline for modeling
You receive raw clickstream events and a user table. Build a reproducible daily pipeline that outputs user-day features for modeling. It must be idemp...
Design an idempotent churn ETL pipeline
You must build a daily pipeline that produces month-end churn metrics (logo churn, gross revenue churn, net revenue retention) from streaming subscrip...
Compute ETA shift and conversion uplift
Use PostgreSQL (SQL) and brief Python pseudocode. Assume 'today' is 2025-09-01. Schema: - trips(trip_id BIGINT, request_ts TIMESTAMP, city_id INT, rid...
Impute, join, and upsert using SQL and Python
Write both SQL and Python (pandas) to complete the following data-manipulation tasks. Assume today is 2025-09-01 for any time filters. Schema: custome...
Compute weekly 3-week rolling sums in SQL
Using PostgreSQL, write a single query that outputs, for each calendar week in a given range, the sum of amounts in that week and a rolling sum over t...
Write SQL and pandas for shopping events
Use the schema and sample data below to answer SQL and pandas tasks. Treat 'today' as 2025-09-01. Schema users(user_id INT, country STRING) pins(pin_i...
Clean, split, merge, and aggregate with pandas
Given two CSVs, use pandas to clean, split strings, merge, and aggregate. drivers.csv driver_id,name,signup_city D1,Jane Doe,SF D2,Mark S,NYC D3,A...
Write SQL for fares and age-band counts
You have two tables. Schema: - drivers(driver_id VARCHAR PRIMARY KEY, name VARCHAR, date_of_birth DATE) - trips(trip_id VARCHAR PRIMARY KEY, driver_id...
Write SQL for last-7-day metrics without windows
Assume today is 2025-09-01. Use ANSI SQL only and do not use window functions. You may use subqueries, GROUP BY, HAVING, and JOINs. Schema and small s...