Data Engineering · Interview FAQs
Data Engineer Interview FAQs — Most Asked Questions in 2026
Quick summary — most asked data engineer interview questions
Data engineer interviews in 2026 test five things: SQL ability, Python for data work, pipeline and Spark fundamentals, basic data modelling, and a clear way of explaining trade-offs. Most candidates fail not on tool knowledge but on explaining their reasoning out loud.
In this guide you will learn:
- The most asked SQL and Python questions.
- Pipeline and Spark questions and how to answer them.
- Data modelling and design questions — the silent filter.
- Behavioural questions that decide the offer.
- How to practise so your answers sound earned, not memorised.
SECTION 01SQL & Python questions
Almost every data engineer interview starts with SQL. The questions are not obscure — they test whether you can translate a business question into a correct, readable query. Python questions test whether you can clean and transform data without copy-paste logic.
| Question | What they test | Strong signal |
|---|---|---|
| Find the second-highest salary per department | Window functions, PARTITION BY | Uses DENSE_RANK or ROW_NUMBER correctly |
| Month-over-month revenue change | LAG, CTEs | Readable CTEs, handles first-month null |
| Customers with no orders | LEFT JOIN vs INNER JOIN | Explains nulls and join choice |
| Deduplicate records keeping the latest | ROW_NUMBER + filter | Correct ordering and tie-breaking |
| Clean a messy CSV in pandas | Python, pandas | Uses functions, checks nulls and types |
| Aggregate 1M+ rows efficiently | Vectorised thinking | Avoids Python loops over rows |
Question:
Find the second-highest salary per department.
WITH ranked AS (
SELECT
department_id,
employee_id,
salary,
DENSE_RANK() OVER (
PARTITION BY department_id
ORDER BY salary DESC
) AS rnk
FROM employees
)
SELECT department_id, employee_id, salary
FROM ranked
WHERE rnk = 2;
Why this is a strong answer:
- DENSE_RANK handles ties correctly
- PARTITION BY department is explicit
- The CTE makes the intent readable
- You can explain what happens with ties
Question:
Clean a CSV and return monthly revenue per region.
import pandas as pd
def load_and_clean(path):
df = pd.read_csv(path, parse_dates=["order_date"])
df = df.drop_duplicates()
df = df.dropna(subset=["order_date", "revenue"])
df = df[df["revenue"] >= 0]
return df
def monthly_revenue(df):
df = df.copy()
df["month"] = df["order_date"].dt.to_period("M").astype(str)
return (
df.groupby(["month", "region"], as_index=False)
.agg(revenue=("revenue", "sum"))
.sort_values(["month", "region"])
)
if __name__ == "__main__":
df = load_and_clean("orders.csv")
print(monthly_revenue(df).head())
Why this is a strong answer:
- cleaning is a separate function
- nulls and duplicates handled explicitly
- vectorised groupby, not a row loop
- readable and reusable
SECTION 02Pipelines & Spark questions
Pipeline questions test whether you understand reliability, scale and failure. Spark questions test whether you can think about distributed processing instead of writing code that only works on one machine.
| Question | What they test | Strong signal |
|---|---|---|
| What makes a pipeline production-ready? | Idempotency, retries, monitoring | Mentions reruns, logs, alerts |
| Batch vs streaming — when to pick which? | Trade-off thinking | Talks about latency vs complexity |
| How do you handle late-arriving data? | Watermarks, reprocessing | Mentions reprocessing windows |
| Broadcast join vs shuffle join | Spark performance | Talks about data size and skew |
| Why is your Spark job slow? | Diagnosis | Mentions partitioning, skew, shuffle |
| How do you handle schema changes? | Reliability | Mentions schema registry or contracts |
Question:
What makes a pipeline production-ready?
A strong answer covers five things:
1. Idempotency
Running the same job twice does not duplicate data.
Write to partitions, merge on keys, or overwrite.
2. Retries
The pipeline can retry a failed step without
manual intervention, with a backoff strategy.
3. Data quality checks
Row counts, null checks, referential checks
before promoting data to the next layer.
4. Monitoring and alerts
Row counts, job duration and failures are tracked.
Alerts fire on anomalies, not only on crashes.
5. Documentation and ownership
Every table has an owner and a short description.
Schema and freshness are documented.
Question:
Why is your Spark job slow?
A strong answer diagnoses, not guesses:
Step 1 — Check the Spark UI
- Which stage is slow?
- Is the time spent in shuffle?
- Are there skewed partitions?
Step 2 — Common causes
- Large shuffle joins where one side
could be broadcast
- Skew: one key dominates the partition
- Too few or too many partitions
- Python UDFs instead of native functions
- Reading far more columns than needed
Step 3 — Fixes
- broadcast() for small dimension tables
- salting or repartitioning for skewed keys
- select only the columns you need
- push filters down to the source
- tune spark.sql.shuffle.partitions
The interviewer wants to see how you
narrow down the problem, not that you
memorised a settings list.
SECTION 03Data modelling & design questions
Modelling questions separate candidates who only write queries from candidates who can design storage that a team relies on. You do not need to be an expert, but you do need to explain your choices.
| Question | What they test | Strong signal |
|---|---|---|
| Star schema vs snowflake — when to use which? | Modelling trade-offs | Mentions query simplicity vs normalisation |
| How would you model a sales pipeline? | Fact and dimension thinking | Identifies grain before columns |
| SCD Type 1 vs Type 2 — which would you use? | Slowly changing dimensions | Explains history requirement |
| Parquet vs CSV for analytics — why? | File formats | Columnar, compression, schema |
| How would you design a data lake layout? | Storage and partitioning | Partition by date, avoid small files |
| What tables would you build for a dashboard? | Aggregation layers | Mentions raw, staged, modelled layers |
Question:
How would you model a sales pipeline?
Strong answer structure:
1. Define the grain first
"One row per order line, per order, per day."
2. Identify the fact table
fact_sales:
- order_id
- product_id
- customer_id
- store_id
- order_date
- quantity
- revenue
3. Identify dimensions
dim_product, dim_customer, dim_store, dim_date
4. Explain trade-offs
- Star schema keeps queries simple
- Snowflake reduces duplication but adds joins
- Choose star schema when analysts run
many ad-hoc queries
5. Mention slowly changing dimensions
"If customer region changes over time,
I would use a Type 2 dimension so
historical reports stay accurate."
Interviewers want to see how you think,
not that you memorised a textbook schema.
Question:
How would you organise a data lake?
Layered design:
raw / bronze
- exact copy of source data
- no transformations
- append-only where possible
staged / silver
- cleaned, typed, deduplicated
- joins to reference data
- validated against schema
modelled / gold
- business-ready tables
- one per reporting need
- aggregated where useful
General rules:
- partition by date
- avoid small files
- store as Parquet or similar
- keep raw data recoverable
- document each layer briefly
Trade-off to mention:
Raw data costs storage but makes
reprocessing possible. Do not skip it.
SECTION 04Cloud & tooling questions
Cloud questions test whether you understand the cost, permissions and reliability model of the platform you will work in. You do not need to know every service — but you do need to be honest about depth.
| Question | What they test | Strong signal |
|---|---|---|
| Walk me through a pipeline you would build in AWS / Azure | End-to-end thinking | Storage, compute, orchestration, monitoring |
| How do you control cloud costs? | Cost awareness | Budgets, lifecycle rules, right-sizing |
| How do you manage secrets? | Security | Managed secret stores, not hard-coded keys |
| How would you orchestrate this pipeline? | Tooling | Airflow or managed equivalent |
| What would you monitor? | Observability | Freshness, row counts, failures, drift |
| Which cloud are you strongest in? | Honesty | Clear depth, no overclaiming |
Question:
Walk me through a pipeline you would build.
Strong answer structure:
1. Source
"Raw files land in object storage from
an application, or a database produces
a CDC stream."
2. Ingestion
"Scheduled job copies the data into
a raw bucket, partitioned by date."
3. Transformation
"A Spark or SQL job cleans, deduplicates
and joins to reference data, writing
to a staged layer."
4. Modelling
"Another job builds business-ready
tables for reporting."
5. Orchestration
"Airflow (or managed equivalent) runs
the jobs in order with retries."
6. Quality
"Checks run between layers: row counts,
null checks, referential checks."
7. Monitoring
"Dashboards track freshness, failures
and job durations. Alerts fire on anomalies."
8. Security
"Roles and policies enforce least privilege.
Secrets live in a managed secret store."
Mention one thing you would improve
in the current version if you rebuilt it.
Question:
How do you control cloud costs?
Strong answer covers five ideas:
1. Know where money is spent
Cost dashboards by service and team.
Untagged resources are the first problem.
2. Right-size compute
Avoid oversized clusters. Use
serverless or auto-scaling where it
fits the workload.
3. Storage lifecycle
Move older partitions to cold storage.
Delete raw data only when the team agrees
it is no longer needed.
4. Watch the biggest jobs
A single Spark job can cost more than
the rest of the pipeline. Track duration
and data scanned.
5. Budget alerts
Alerts on unusual daily spend catch
mistakes early. A misconfigured job
can double a bill overnight.
Bonus: mention what you would NOT cut
even if it saves money — backups and
monitoring usually pay for themselves.
SECTION 05Behavioural questions & preparation
Behavioural rounds decide offers more often than technical rounds do. The interviewer is checking whether you can work with stakeholders, explain trade-offs and take ownership when things break.
| Question | What they test | Strong signal |
|---|---|---|
| Tell me about a pipeline you broke | Ownership | Clear root cause, fix, prevention |
| How do you handle a stakeholder who wants a number by Friday? | Communication | Trade-offs, options, honesty |
| Describe a difficult data quality issue | Debugging mindset | Concrete steps, not generalities |
| Why are you switching to data engineering? | Motivation | Clear story, real projects |
| How do you keep learning? | Growth | Specific examples, not slogans |
STAR answer template:
Situation
- One sentence of context.
- Keep it short. The interviewer cares
about what YOU did.
Task
- What you were responsible for.
- The constraint (time, data quality,
unclear requirements).
Action
- The specific steps you took.
- Mention a trade-off you considered.
Result
- The outcome, with a number if you can.
- Include what you would do differently.
Example:
"The daily order pipeline was late two days
in a row. I was on call. I traced it to a
upstream schema change that dropped a column.
I added a schema check before the transformation
step and an alert on row counts. It has not
been late since. In hindsight, I would have
added the check when the source team
announced the change."
Interview preparation checklist:
SQL and Python:
□ Practise on real datasets, not just puzzles
□ Talk through queries out loud
□ Know window functions and CTEs cold
Pipelines:
□ Explain two pipelines you built end to end
□ Know what production-ready means
□ Have one story of a failure and a fix
Spark:
□ Know shuffle, broadcast and skew basics
□ Be able to diagnose a slow job
Modelling:
□ Define grain before columns
□ Know star schema and slowly changing dimensions
□ Have a layered data lake answer ready
Cloud:
□ Explain one end-to-end pipeline on your platform
□ Know cost control and secrets management basics
Behavioural:
□ Prepare 4-5 STAR stories
□ Include at least one failure
□ Practise saying the answers out loud
Portfolio:
□ Two documented projects
□ README for each
□ Can explain any line if asked
SECTION 06Rapid-fire Q&A
Q1What is the difference between ETL and ELT?
ETL transforms data before loading it into the warehouse. ELT loads raw data first and transforms it inside the warehouse using its compute. Modern cloud warehouses favour ELT because storage is cheap and compute is elastic.
Q2When would you use streaming instead of batch?
When the business needs fresh data within seconds or minutes — fraud detection, live dashboards, real-time alerts. If daily or hourly is fine, batch is simpler and cheaper to operate.
Q3What is idempotency and why does it matter?
Idempotency means running the same job twice produces the same result, not duplicate rows. It matters because pipelines fail and rerun. Without idempotency, a rerun corrupts the data.
Q4How do you handle schema changes in production?
Use schema contracts or a schema registry so upstream changes are visible before they break jobs. For breaking changes, deploy the new schema and a versioned table in parallel, migrate, then retire the old version.
Q5What is a data lakehouse?
A lakehouse combines the cheap storage of a data lake with the table management and ACID transactions of a warehouse. Formats such as Delta Lake, Apache Iceberg and Hudi are the usual examples.
Q6What is a slowly changing dimension?
A dimension whose attributes change over time — customer address, product price. Type 1 overwrites the old value. Type 2 keeps history as multiple rows with validity dates. Choose based on whether reporting needs history.
Q7How would you monitor data freshness?
Track the latest timestamp per table and compare it to an expected freshness threshold. Alert when the gap exceeds it. Combine with row count checks and schema checks for basic observability.
Q8What is the difference between a partition and a bucket in Spark?
Partitions split data across nodes by a key, affecting parallelism. Buckets group data within partitions by hash, often for join optimisation. Both affect performance but solve different problems.
SECTION 07Test yourself — data engineer interview quiz
Five questions. No sign-up.
0 / 5Pick an answer to see why it is right or wrong.
SECTION 08Frequently asked questions
How many rounds does a data engineer interview usually have?
Typically three technical rounds plus a behavioural round. Small companies may combine SQL and coding into one round. Large companies often add a dedicated system design round for data pipelines.
Is Spark mandatory for data engineer roles in 2026?
For many roles, yes — especially in companies with large data volumes. Some analytics engineering roles lean more on SQL and dbt. Check the job descriptions for the companies you want and prepare accordingly.
Do I need to know machine learning?
Not for most data engineer roles. You need enough understanding to build clean, well-documented datasets that data scientists can use. That is different from training models yourself.
How do I handle questions about tools I have not used?
Be honest and translate. "I have not used Airflow in production, but I have orchestrated pipelines with cron and a managed scheduler. I understand DAGs and retries; the main difference would be adapting to Airflow's syntax and UI."
What should I bring to a data engineer interview?
Bring your project story and two or three examples you can explain in depth. Bring a short list of questions about the team's stack, data volumes and how they handle failures. Enthusiasm for the problem matters as much as tool knowledge.
SECTION 09Related reads
Classroom & online · Noida
Prepare for your data engineer interview
Our Data Analytics Training Course covers SQL, Python, Spark and real pipeline projects, with mock interviews and a portfolio review built in.
₹15,500 · full programme- SQL, Python and Spark
- Real pipeline projects
- Mock interviews
- Weekday & weekend batches