Course · 102 lessons
Data Engineering Tools Roadmap.
A beginner-to-advanced course in reliable data pipelines: batch and streaming fundamentals, Spark, Airflow orchestration, Kafka, dbt, Snowflake and Databricks.
Go from data-pipeline fundamentals to a production-grade, multi-engine data platform. This path is structured into three stages, walking the same batch → stream → transform → warehouse shape across every tool a real data engineering team touches.
Beginner — foundations
- Data engineering fundamentals: file formats, idempotency, batch pipelines, and physical data layout — the safety contracts every pipeline below depends on. Plus the vocabulary and decisions that come before any of that: batch vs. streaming, data lake vs. warehouse vs. lakehouse, and star-schema data modeling basics.
- Spark & PySpark: cluster architecture, RDDs, Catalyst, and your first DataFrame — reading, writing, and transforming data at scale.
- Airflow: your first DAG, passing data between tasks, and scheduling/backfill.
- Kafka: topics, partitions, offsets, and producing/consuming your first messages.
- dbt: models,
ref, sources, tests, and the view/table/ephemeral materializations. - Snowflake: warehouses, loading data, time travel, and semi-structured
VARIANTdata. - Databricks: the workspace, Delta Lake’s transaction log, Unity Catalog, and the medallion architecture.
- R: reading/writing data and
dplyr-based transformation and reshaping, for pipelines that lean on R instead of (or alongside) Python.
Intermediate — design patterns and production reliability
- Data engineering: data quality checks, incremental loads and CDC, orchestration patterns that tie multiple tools together, and testing a pipeline before it ships.
- Spark & PySpark: reading the Spark UI to diagnose slow jobs,
spark-submitdeployment, joins, window functions, and UDFs. - Airflow: dynamic task mapping, sensors, branching, and connections/hooks.
- Kafka: partitioning and ordering guarantees, the schema registry, Kafka Connect, SASL/ACL security, and delivery semantics.
- dbt: incremental models, Jinja/macros, and snapshots for slowly changing dimensions.
- Snowflake: micro-partitions and clustering, streams/tasks, secure data sharing, and Snowpark for building pipelines as Python DataFrames instead of SQL strings.
- Databricks: declarative pipelines with expectations, jobs/workflows, and optimizing Delta tables.
Advanced — correctness, performance, and cost at scale
- Data engineering: schema evolution/data contracts, exactly-once streaming semantics, and lambda/kappa streaming architecture.
- Spark & PySpark: memory management and debugging failures, the execution model, performance tuning, and Structured Streaming.
- Scala: packaging and shipping a Spark job as a JAR with sbt.
- Airflow: testing DAGs, and running Airflow in production (idempotency, pools, SLAs).
- Kafka: replication/retention internals, Kafka Streams, and producer/consumer tuning.
- dbt: documentation/contracts/lineage, and deployment with Slim CI.
- Snowflake: query profiling/cost attribution, and dynamic tables.
- Databricks: Structured Streaming and cost control with cluster policies.
- R: querying databases from R with
dbplyr, and building reproducible pipelines withpurrr.
Staff-level — production concerns no single tool teaches
- Data engineering: data lineage, governance, security and PII handling, observability, cost optimization, CI/CD for data pipelines, disaster recovery, and a capstone lesson tying lake/warehouse, orchestration, governance, and observability into one coherent data platform architecture.