Data Engineer interview question
What is the difference between ETL and ELT?
ETL transforms data before loading it into the target; ELT loads raw data first and transforms inside a capable warehouse. Choose from governance, latency, compute location, reproducibility, and access-control needs.
Direct answer
What a strong answer covers
How it works
ETL shapes data in a processing engine before it reaches the target, so the warehouse only ever holds curated tables; that suits strict governance, limited warehouse compute, or targets that cannot transform. ELT lands raw data first and transforms with SQL inside the warehouse, which keeps the original available for reprocessing, makes transformations versionable as code with tools such as dbt, and uses the warehouse’s elastic compute. The choice today is mostly ELT for analytics on cloud warehouses, with ETL-style pre-processing where sensitive fields must be masked before landing or where the source format needs parsing the warehouse cannot do.
Example
A company loads raw Salesforce, billing, and product events into BigQuery hourly and builds staging, intermediate, and mart models in dbt, so an analyst can trace a revenue figure back to raw rows and a fix to a transformation reruns from history. Personal identifiers are hashed in the ingestion job before landing, because the raw layer is readable by more people than the source systems allow.
Common mistakes
- Loading raw data with personal information into a widely accessible raw layer.
- Transforming in a separate engine and then being unable to reproduce a number from raw inputs.
- Choosing ELT and letting the warehouse bill explode on untested transformations run per query.
A useful answer structure
Answer from your own work.
Do not memorise a script: use only examples you can explain honestly in follow-up questions.
Open the desktop workspace and rehearse a clear answer in your own words.