Data Engineer interview questions
60 questions asked in Data Engineer interviews, on pipelines, warehouses, data quality and streaming. They are built from thousands of real job ads. Under each one: what the interviewer is listening for, and the follow-up they may ask. For the recruiter call, see the HR screen questions.
Behavioral questions
Questions about how you work in this role. More in behavioral questions for any tech role.
-
1
Tell me about a time bad data from your pipeline reached a report or a dashboard. How did you handle it?
All levels
Listening for Owning the incident, telling the people affected, and fixing the cause, not only the numbers.
Follow-up Ask how they made sure it would not happen again.
-
2
Tell me about a time you noticed something risky in how personal data was handled. What did you do?
All levels
Listening for Speaking up and following through with the right people, not quietly fixing or ignoring it.
Follow-up Ask who they told and what changed.
-
3
Tell me about the first time something you built ran in production. What surprised you?
Junior
Listening for Honest reflection on the gap between their laptop and production.
Follow-up Ask what they now check before shipping.
-
4
Tell me about a time someone asked you for data, and what they really needed turned out to be different.
Junior, Mid
Listening for Asking about the decision behind the request before building.
Follow-up Ask what question they now ask first.
-
5
Tell me about a time a leader questioned a number your team delivered. How did you show whether it was right?
Mid, Senior
Listening for Calm tracing from source to output and clear explanation.
Follow-up Ask what they did if the number turned out to be wrong.
-
6
Tell me about a time you retired a pipeline or table that people were still using.
Mid, Senior
Listening for Finding users, giving notice and a migration path, then switching off.
Follow-up Ask how they found everyone who depended on it.
-
7
Tell me about a time you found and cut waste in data infrastructure costs.
Mid, Senior
Listening for How they found the waste with numbers and what they changed.
Follow-up Ask how much it saved and whether it stayed down.
Technical discussion questions
Talking through your experience and decisions, not a coding test. Grouped by topic.
Python
-
1
Tell me about a Python data job you'd call messy. How would you make it easier to test and maintain?
Mid
Listening for Small functions, tests with tiny sample data, config out of code.
Follow-up Ask what they would test first.
-
2
How do you raise the quality of pipeline code and data models across a team of data engineers?
Senior
Listening for Review standards, templates, docs, pairing and tests that actually stuck.
Follow-up Ask about one standard they introduced and how they got people to follow it.
SQL
-
3
You've just built a new table in the warehouse. How do you check the numbers are right before anyone uses it?
Junior
Listening for Concrete checks: row counts against the source, nulls, duplicates, a few hand-checked rows.
Follow-up Ask about a time one of these checks caught a problem.
-
4
After a join, your table suddenly has more rows than you expected. How would you figure out why?
Junior, Mid
Listening for Checking the grain and finding non-unique join keys.
Follow-up Ask how they would stop it happening again.
-
5
How do you decide which logic belongs in SQL models and which belongs in Python?
Mid, Senior
Listening for Clear reasons like readability, testing, performance and who maintains it.
Follow-up Ask about a case where they moved logic from one to the other.
Data quality
-
6
An upstream team renamed a column without telling you, and your pipeline broke. How would you deal with it?
Junior
Listening for A quick fix plus telling users, then a way to catch it earlier like schema checks.
Follow-up Ask how they would avoid it next time.
-
7
Upstream teams keep breaking your pipelines with schema changes. What would you set up with them?
Mid
Listening for Data contracts, schema checks in their CI, clear owners and a change process.
Follow-up Ask how they would get the other team to agree.
-
8
Bad data reaches dashboards a few times a month, and people are losing trust. How would you fix this across the team?
Senior
Listening for Tests at each layer, clear owners, alerts, an incident process and SLAs.
Follow-up Ask how they would measure trust coming back.
Data modeling
-
9
Using a table you've worked on, can you explain the difference between a fact table and a dimension table?
Junior
Listening for Their own example with the grain and keys explained simply.
Follow-up Ask what one row in their fact table stood for.
-
10
Customers can change their country. How would you model that so old reports still show the right numbers?
Mid
Listening for Keeping history with valid-from and valid-to dates or snapshots.
Follow-up Ask what this costs people who query the table.
-
11
Different teams define 'active user' in different ways, and the numbers don't match. How would you sort that out?
Senior
Listening for One agreed definition with an owner, a shared metrics layer, migrating old reports.
Follow-up Ask how they would get the teams to agree.
Airflow
-
12
You come in one morning and see last night's Airflow job failed. What do you do first?
Junior
Listening for Read the logs, find the failing task, check upstream, rerun safely and tell the users.
Follow-up Ask how they know a rerun won't create duplicate rows.
-
13
You fixed a bug in a transformation and need to backfill two years of data. How would you plan it?
Mid
Listening for Idempotent partitions, running in chunks, cost, not blocking daily loads, telling users.
Follow-up Ask how they would check the backfilled numbers.
-
14
Our Airflow has grown to over a thousand DAGs and the scheduler struggles. What would you look at?
Senior
Listening for DAG parsing time, top-level code, pools, splitting deployments, executor choice.
Follow-up Ask when they would consider a different orchestrator.
Data warehouse
-
15
We're building a data platform from scratch for a company of about two hundred people. How would you design it?
Senior
Listening for Ingestion, storage layers, transformation, orchestration and access, sized for the company.
Follow-up Ask what they would leave out in the first six months.
-
16
You're moving hundreds of pipelines from an old warehouse to a new one. How would you plan the migration?
Senior
Listening for Inventory, priority by usage, running both in parallel, reconciling numbers, then switching off.
Follow-up Ask how they decide something is safe to turn off.
Dbt
-
17
Walk me through a dbt model you've written and how you tested it.
Junior, Mid
Listening for Layers like staging and marts, refs, and tests such as unique and not null.
Follow-up Ask what they do when a test fails in the nightly run.
-
18
How do you review and release changes to your pipelines so a bad change doesn't reach production?
Mid
Listening for Code review, CI running tests on sample data, staging runs, infra changes as code.
Follow-up Ask about a bad change that still got through.
Spark
-
19
Tell me about a time you used Spark. Why not just plain Python or SQL?
Junior
Listening for Data size and splitting work across machines, plus the cost of that.
Follow-up Ask what made their Spark job slow, if anything.
-
20
One Spark stage runs for an hour while the others finish in minutes. What do you think is going on?
Mid
Listening for Data skew or hot keys found through task times in the Spark UI.
Follow-up Ask how they would fix a skewed join.
-
21
A daily Spark job that used to take one hour now takes six as the data grew. How would you approach it?
Senior
Listening for Profiling first, then partitioning, file layout, shuffles, going incremental.
Follow-up Ask when they would redesign instead of tuning.
Kafka
-
22
How was Kafka used in a project you've worked on?
Junior
Listening for Producers, topics, partitions and consumer groups in their own words.
Follow-up Ask what happens when a consumer falls behind.
-
23
Your streaming job writes payment events to a table, and sometimes the same event shows up twice. How would you deal with that?
Mid
Listening for At-least-once delivery, idempotent writes with an event key, checkpoints.
Follow-up Ask what exactly-once would cost them.
ETL
-
24
Walk me through a data pipeline you've worked on. Where does the data come from, and where does it end up?
Junior
Listening for A clear picture of sources, steps and destination, and which part they built themselves.
Follow-up Ask what happens when the source data arrives late.
-
25
A table takes three hours to rebuild every night. How would you change it to load only new data?
Junior, Mid
Listening for An incremental load with a watermark and merge, plus late or updated rows.
Follow-up Ask how they handle a row that changes after it was loaded.
-
26
Tell me about a pipeline you owned end to end. How did you know it was healthy day to day?
Mid
Listening for Freshness and volume checks, alerts, SLAs, who gets paged.
Follow-up Ask about the last time it broke and who noticed first.
Snowflake
-
27
A dashboard query in Snowflake takes two minutes. How would you start making it faster?
Junior
Listening for Look at the query profile, filter early, pre-aggregate, then think about warehouse size.
Follow-up Ask when they would just use a bigger warehouse.
-
28
Your team is choosing between Snowflake and BigQuery for a new warehouse. What would you compare?
Mid, Senior
Listening for Pricing models, the cloud they already use, concurrency, tooling and lock-in.
Follow-up Ask which hidden costs they have seen in practice.
-
29
Our warehouse bill doubled in six months. How would you bring it down without slowing the business?
Senior
Listening for Find the top spenders, cost per team, incremental models, schedules and guardrails.
Follow-up Ask how they would keep it from creeping back up.
AWS
-
30
How did your team set up cloud resources for the data platform, like buckets and permissions?
Junior
Listening for Whether by hand or as code, and why code with review is safer.
Follow-up Ask what goes wrong when people change things by hand in the console.
Java
-
31
Have you worked on a data job in Java or Scala? What felt different from Python?
Junior, Mid
Listening for Honest comparison of typing, speed, build and deploy.
Follow-up Ask which language they would pick for a new Spark job and why.
-
32
Tell me about a streaming service in Java or Scala that you've built or run. What made it hard in production?
Mid, Senior
Listening for Real problems like state, memory, consumer lag and deploys.
Follow-up Ask how they upgraded it without losing or repeating data.
-
33
You're starting a new high-volume streaming job. How would you choose between Python, Java and Scala for it?
Senior
Listening for Performance, library support, team skills and how it will be run and debugged.
Follow-up Ask what they would do if the team only knows Python.
Bigquery
-
34
How do you choose the partition column for a large table in BigQuery or a similar warehouse?
Junior
Listening for Partitioning by how people filter, usually a date, and what goes wrong with a bad choice.
Follow-up Ask how they would check that queries actually use the partition.
-
35
Your queries in BigQuery scan a lot of data and the bill keeps going up. What would you change?
Junior, Mid
Listening for Selecting only needed columns, partition filters, clustering.
Follow-up Ask how they would find which queries cost the most.
Data governance
-
36
You find a dataset in the data lake that nobody seems to own. How would you decide whether to trust it?
Junior
Listening for Looking for lineage, last update, who reads it, checking against a known source, then finding an owner.
Follow-up Ask what they would do if nobody claims it.
-
37
You find a table with customer emails and phone numbers that anyone in the company can query. What would you do?
Junior, Mid
Listening for Raise it with the owner, restrict access, mask columns.
Follow-up Ask how they would find other tables like it.
-
38
Analysts need to work with user data, but some columns are personal information. How would you set up access?
Mid
Listening for Tagging sensitive columns, masking, role-based access and audit logs.
Follow-up Ask how they would handle a request to delete one user's data.
-
39
Legal says we must delete a user's data within thirty days of a request, including in the data lake. How would you make that work?
Senior
Listening for Finding every copy through lineage, a partition design that makes deletes cheap, proof it was done.
Follow-up Ask how they would handle backups.
Data lake
-
40
Your team keeps raw files in S3 and clean tables in a warehouse. Why would you keep both?
Junior
Listening for Cheap raw storage you can replay versus curated tables for queries.
Follow-up Ask when they would query the raw files directly.
-
41
Your raw data in S3 has turned into millions of small files and queries are slow. How would you fix it?
Mid
Listening for Compaction, better partitioning, a table format like Iceberg or Delta.
Follow-up Ask how they would stop it from coming back.
Streaming
-
42
In your own words, when is a batch pipeline enough, and when do you really need streaming?
Junior
Listening for Latency needs against cost and complexity, with a real example.
Follow-up Ask what Kafka adds in a streaming setup.
-
43
With an example, what's the difference between the time an event happened and the time it reached your pipeline?
Junior
Listening for Event time versus processing time and why late events matter for counts.
Follow-up Ask how a tool like Flink handles events that arrive late.
-
44
Events from mobile apps can arrive hours late. How would you design a streaming count that still gives correct hourly numbers?
Mid
Listening for Event-time windows, watermarks, allowed lateness, a batch correction later.
Follow-up Ask how they decide how late is too late.
-
45
Product wants fraud signals within seconds instead of the next morning. How would you change the architecture?
Senior
Listening for Streaming with state, latency versus correctness, keeping batch as the source of truth.
Follow-up Ask what breaks first at ten times the traffic.
-
46
Some teams want every pipeline to be real time. When would you push back and keep batch?
Senior
Listening for Weighing real latency needs against cost, complexity and debugging.
Follow-up Ask about a case where streaming really was the right call.
Terraform
-
47
You need a new storage bucket for a pipeline, and our cloud setup lives in Terraform. How would you go about it?
Junior
Listening for Writing the change, reading the plan, getting review, applying through CI, sensible permissions.
Follow-up Ask what they look for in the plan output.
-
48
Someone changed a bucket's permissions by hand, and now Terraform wants to undo it. How would you handle that?
Mid, Senior
Listening for Finding out why it was changed, deciding which state is right, bringing the code in line.
Follow-up Ask how they would stop hand changes from happening again.
-
49
How would you set up the data platform's infrastructure so new pipelines and environments are easy and safe to create?
Senior
Listening for Reusable Terraform modules with review, jobs on Kubernetes, least-privilege access.
Follow-up Ask how they would handle drift from manual changes.
Kubernetes
-
50
Your pipeline works on your laptop but fails when it runs in a container on Kubernetes. What would you check?
Junior
Listening for Dependencies, environment variables, credentials and permissions, memory limits, reading pod logs.
Follow-up Ask how they would make local runs closer to production.
-
51
A Spark job running on Kubernetes keeps getting killed for running out of memory. How would you look into it?
Junior, Mid
Listening for Executor memory settings, pod limits, skewed partitions, big collects.
Follow-up Ask how they tell a memory setting problem from a data problem.
-
52
Your Airflow workers run on Kubernetes, and tasks sometimes wait in the queue for a long time. Where would you look?
Mid
Listening for Pools and concurrency limits, pod resources, autoscaling, the scheduler.
Follow-up Ask how they would tell a scheduler problem from a cluster problem.
-
53
Two teams' heavy jobs keep slowing each other down on a shared cluster. How would you handle it?
Senior
Listening for Resource quotas, queues, priorities, scheduling, or separate capacity with cost shown.
Follow-up Ask how they would explain the trade-off to both teams.