ETL and ELT Design Patterns Questions

Trade-offs between extract-transform-load and extract-load-transform strategies, where transformation logic should live, and when to push compute into the warehouse. Covers incremental vs full loads, change-data-capture, slowly changing dimensions handling in the load path, and tooling (dbt-style transformation layers). Focuses on the processing-strategy decision rather than a specific vendor.

EasyTechnical
94 practiced

Define Change Data Capture. Compare log-based CDC (reading the transaction log), trigger-based CDC, and timestamp/high-water-mark polling on latency, load placed on the source, implementation complexity, and correctness guarantees. Name a tool for the log-based approach and give one scenario where each of the three is the right call.

MediumTechnical
133 practiced

Write a SQL query that deduplicates a table events(event_id, user_id, event_type, event_time), keeping only the latest row per (user_id, event_type) by event_time. Then explain how the query behaves on exact ties and why it's safe to re-run.

HardTechnical
94 practiced

Write a MERGE statement that idempotently loads a staging table orders_stg(order_id, amount, last_modified, deleted) into a warehouse table orders(order_id PK, amount, last_modified, is_deleted): insert new orders, update existing ones only when last_modified is newer, and soft-delete when deleted is true. Then explain what makes this MERGE safe to re-run after a failure and safe if two runs somehow overlap.

MediumTechnical
103 practiced

For a set of complex transformations, one candidate wants to write them as dbt models running entirely in SQL, another wants a Python/Spark job. When does SQL-in-the-warehouse stop being the right tool, and what does a Spark job buy you that dbt can't?

MediumTechnical
77 practiced

Walk through how you'd decide where transformation logic should live for a new pipeline: pushed down into the warehouse after loading, or applied upstream before loading. What actually drives that call in practice, and how does your answer change between a small relational source and a high-volume event stream?

Unlock Full Question Bank

Get access to all 11 ETL and ELT Design Patterns interview questions and detailed answers.

Sign in to Continue

Join thousands of developers preparing for their dream job.