InterviewStack.io LogoInterviewStack.io

Data Transformation and Loading Questions

Focuses on the extract transform load and extract load transform approaches for ingesting transforming and loading data. Candidates should understand three core stages: extract which is acquiring data from sources such as application programming interfaces databases logs and message queues; transform which is cleaning validating reshaping aggregating and enriching data to meet downstream requirements; and load which is writing processed data to targets such as analytic databases data warehouses data lakes or reporting systems. Topics include the differences between extract transform load and extract load transform, incremental loads versus full refresh, scheduling and orchestration best practices, tooling and frameworks used for transformation and orchestration, idempotency and deduplication strategies, error handling and retry semantics, data quality checks end to end validation recovery and integration with business intelligence and analytics consumers. Interview focus is on concrete transformation logic pipeline orchestration and validation strategies and on choosing the right pattern and tooling for given constraints.

HardTechnical
56 practiced
For a company with many self-serve analysts, compare the trade-offs of implementing transformations inside the BI tool (Tableau Prep / Power BI) versus central ELT in the data warehouse. Cover maintainability, governance, query performance, duplication of logic, discoverability, and who should own transformation logic for critical metrics.
HardTechnical
56 practiced
You need to perform nightly upserts against a 1B-row target table from a 50M-row staging file. Propose an efficient MERGE/upsert strategy (Snowflake or similar MPP) that minimizes scan cost and runtime: consider filtering to true deltas, clustering keys or micro-partition pruning, batching merges, using CTAS and atomic swaps, or partial rebuilds. Provide the SQL pattern and operational steps.
HardTechnical
49 practiced
Implement sessionization logic to compute user sessions (session_id, start_ts, end_ts, duration) using event timestamps with a 30-minute inactivity gap. Also account for late events allowed up to 2 hours late: describe how you would update existing sessions when late events arrive (both in SQL and in a stream processor), how to persist sessions, and how to emit correction records for downstream metrics.
EasyTechnical
49 practiced
Explain idempotency and deduplication strategies you would apply to an incremental load so that retries or replays don't corrupt metrics. Describe concrete techniques (staging tables + swap, MERGE with dedupe keys, job-run identifiers, checksums, watermarking) and discuss pros/cons from an analyst's perspective.
MediumTechnical
47 practiced
Write a Python (pandas) function to perform a small ETL: read a CSV with columns [user_id, signup_ts, revenue], where signup_ts is an ISO UTC string and revenue is a string like "$1,234.56". Clean and transform: convert signup_ts to timezone 'America/New_York', strip currency and convert revenue to float, deduplicate by user_id keeping the most recent signup_ts, and write the output to Parquet. Add comments for how to handle files larger than memory.

Unlock Full Question Bank

Get access to hundreds of Data Transformation and Loading interview questions and detailed answers.

Sign in to Continue

Join thousands of developers preparing for their dream job.