Ads / social
Meta interview themes
What people report studying for — not a take-home dump. Last editorial update 2026-09-01.
Rounds you should expect
SQL
Rolling unique users, COUNT DISTINCT cost, and a metric definition that cannot fork.
Metrics
One definition of DAU. What happens when ads and feed teams both own a dashboard.
Spark
A shuffle that OOM’d. Levers before you buy more nodes.
From the question bank
medium · SQL · SQL
Running total of daily revenue. Why is SUM(SUM(amount)) OVER (...) valid?
Practice →medium · SQL · SQL
You need a 7-day rolling unique users. What breaks if you use COUNT DISTINCT in a window carelessly?
Practice →medium · SQL · SQL
You grouped by DATE_TRUNC(week, ts) and compared to last week. Why are week 1 and week 53 lying?
Practice →hard · SQL · SQL
You must count distinct users in a 30-day window every day. Sketch a table design that does not scan 30 days of events nightly.
Practice →easy · Orchestration · Airflow
TaskFlow vs operators. When do you still write a classic Operator?
Practice →hard · Streaming · Kafka
partition=user_id and one celebrity user melts a partition. Redesign in two sentences.
Practice →medium · Coding · Spark
Broadcast join vs shuffle join. What is the failure mode of a hint?
Practice →easy · Coding · Spark
Read an explain plan: how do you confirm a broadcast?
Practice →hard · AI / ML · AI / RAG / MLOps
Where does a data engineer stop in MLOps?
Practice →medium · AI / ML · AI / RAG / MLOps
Online vs offline features for the same model.
Practice →hard · AI / ML · AI / RAG / MLOps
Offline feature table has 40 columns; online store has 12. The model’s AUC collapsed after deploy. First check?
Practice →medium · AI / ML · AI / RAG / MLOps
Eval for a classifier in the warehouse vs a Python job. What must both have?
Practice →