ETL/ELT patterns, data modelling, pipeline design, and data quality.
When to transform before loading vs after, cloud vs on-prem tradeoffs, and real-world examples.
Fact and dimension tables, denormalisation tradeoffs, and when to use each in a data warehouse.
Overwrite vs historical tracking — choosing the right SCD strategy and implementing it in PySpark.
Building one pipeline that handles many sources via configuration — control tables, ForEach, and dynamic content.
Designing a configurable data quality layer with rule definitions, failure handling, and alerting.