Beginner · 8 phases · 56 lessons · Free

Data Engineering Fundamentals: From Pipelines to Production

A hands-on, project-based roadmap building a complete data engineering portfolio: ingest, transform, orchestrate, and serve analytics-ready data using modern cloud-native tools.

Start This Roadmap Free →

Phase 1: Python & SQL Essentials for

  1. Setting Up a Data Engineering

    Objectives: Explain why a dedicated local development environment is essential for data engineering; Define virtual environments, version control, and database servers in plain terms; Describe the role of each tool (Pyth

  2. Python Fundamentals

    Write Python scripts using variables, built-in data types (int, float, str, bool, list, dict), conditionals, and loops to manipulate sample data records.

  3. Working with Functions

    Create reusable Python functions and modules with type hints, docstrings, and structured exception handling to process CSV and JSON data files.

  4. Introduction to Relational Databases and

    Execute SELECT, FROM, WHERE, ORDER BY, and LIMIT clauses in PostgreSQL to retrieve and filter data from a sample e-commerce database schema.

  5. Data Manipulation with SQL

    Write SQL queries using INNER/LEFT JOINs, GROUP BY with aggregate functions (COUNT, SUM, AVG), and subqueries to answer business questions from a normalized schema.

  6. Connecting Python to PostgreSQL with

    Implement Python scripts that connect to PostgreSQL using psycopg2 and SQLAlchemy Core to perform CRUD operations and execute parameterized queries safely.

  7. Capstone

    Design and implement an end-to-end ETL pipeline in Python that extracts sales data from CSV files, transforms it using Pandas, loads it into PostgreSQL, and validates row counts and data quality checks with SQL queries —

Phase 2: Designing Data Models & Schema

  1. Conceptual Data Modeling with Entity-Relationship

    Draw an entity-relationship diagram (ERD) for a sample e-commerce domain that captures entities, attributes, relationships, and cardinalities using standard notation.

  2. Logical Schema Design

    Apply first, second, and third normal form rules to a denormalized dataset to produce a logical schema free of update anomalies.

  3. Physical Schema Implementation in PostgreSQL

    Write and execute DDL statements to create tables, primary keys, foreign keys, indexes, and check constraints that match a given logical schema in PostgreSQL.

  4. Dimensional Modeling

    Design a star schema (fact table + dimension tables) for a sales analytics use case, identifying grain, dimensions, and additive/non-additive measures.

  5. Schema Evolution Patterns

    Implement additive schema changes (new nullable columns, new tables) and write reversible migration scripts using a version-control workflow.

  6. Data Contracts & Schema Registry

    Define a Protobuf schema for a streaming event, register it in a schema registry, and validate producer/consumer compatibility checks.

  7. Capstone

    Deliver a complete schema package — ERD, normalized logical schema, PostgreSQL DDL, star-schema dimensional model, migration scripts, and Protobuf data contracts — that passes automated validation tests for a retail orde

Phase 3: Batch Ingestion with Apache Spark

  1. Spark Architecture and Core Concepts

    Explain Spark's distributed execution model including driver, executors, and cluster manager roles in batch ingestion workflows.

  2. Reading Structured Data with Spark

    Implement batch ingestion pipelines using DataFrameReader to load CSV, JSON, and Parquet files with explicit schema enforcement.

  3. Handling Schema Evolution and Data

    Design resilient ingestion logic that handles schema drift, missing fields, and corrupt records using Spark's schema merging and bad record handling options.

  4. Partitioning Strategies for Efficient Batch

    Implement partitioned writes to cloud storage (S3/ADLS/GCS) using partitionBy and bucketBy to optimize downstream query performance.

  5. Idempotent Batch Ingestion with Delta

    Build exactly-once ingestion pipelines using Delta Lake's ACID transactions and merge operations to prevent duplicate data on re-runs.

  6. Monitoring and Tuning Spark Batch

    Evaluate Spark UI metrics (shuffle spill, task skew, GC time) and apply configuration tuning (executor memory, parallelism) to meet SLA targets.

  7. Capstone

    Deliver a working batch ingestion pipeline that loads daily order CSV files from cloud storage into a partitioned Delta table with schema enforcement, idempotency, and monitoring alerts — success criteria: zero data loss

Phase 4: Streaming Ingestion with Kafka &

  1. Kafka Core Architecture

    Explain how Kafka brokers, topics, partitions, and replication factor interact to provide fault-tolerant, ordered event streaming.

  2. Producing Events with Idempotence and

    Implement a Python producer using the kafka-python library that sends Avro-serialized events with idempotent delivery guarantees.

  3. Consuming Events with Consumer Groups

    Implement a Python consumer that joins a consumer group, processes Avro events, and commits offsets manually to achieve exactly-once processing semantics.

  4. Schema Evolution and Governance with

    Register, retrieve, and evolve Avro schemas using Confluent Schema Registry, enforcing backward compatibility rules for producer and consumer clients.

  5. Building Resilient Pipelines

    Design a consumption pattern that routes poison-pill messages to a dead-letter topic after configurable retries with exponential backoff.

  6. Monitoring Kafka Health with Prometheus

    Instrument producers and consumers with Prometheus metrics, visualize consumer lag in Grafana, and configure alerting rules for lag thresholds.

  7. Capstone

    Deliver a working artifact: a Docker Compose stack that ingests simulated clickstream JSON events into Kafka, validates them via Schema Registry, processes them with a resilient consumer group writing to PostgreSQL, and

Phase 5: Orchestrating Pipelines with Apache Airflow

  1. Airflow Architecture and Core Concepts

    Explain the role of the Scheduler, Webserver, Executor, and Metadata Database in Airflow's architecture and how they coordinate DAG execution.

  2. Installing Airflow Locally with Docker

    Deploy a local Airflow instance using the official Docker Compose file, verify component health, and access the UI.

  3. Authoring Your First DAG with

    Implement a DAG using BashOperator and PythonOperator that runs a simple multi-step data workflow with explicit task dependencies.

  4. Templating and Parameterizing DAGs with

    Refactor a DAG to use Jinja templating for dynamic file paths and Airflow Variables for environment-specific configuration.

  5. Implementing Resilient Pipelines with Retries

    Configure task retries, execution timeouts, SLAs, and email callbacks to build a fault-tolerant pipeline that meets reliability requirements.

  6. Orchestrating a Partitioned Data Lake

    Design a DAG that incrementally ingests partitioned CSV data into a local data lake, handles schema evolution, and registers datasets for downstream consumers.

  7. Capstone

    Deliver a version-controlled Airflow project containing a parameterized, monitored, and tested DAG that reliably ingests daily partitioned data into a local data lake, with success defined by: (1) DAG parses with zero er

Phase 6: Building a Cloud Data Warehouse

  1. Cloud Data Warehouse Architecture and

    Compare the architectural trade-offs of Snowflake, BigQuery, and Redshift to select the optimal cloud data warehouse service for a given analytical workload profile.

  2. Provisioning a Cloud Data Warehouse

    Implement a secure, cost-optimized cloud data warehouse instance using Infrastructure-as-Code (Terraform) with configured network policies, IAM roles, and resource monitors.

  3. Designing Star Schemas for Analytical

    Design a dimensional model (star schema) comprising fact and dimension tables optimized for query performance and business question alignment.

  4. Implementing ELT Pipelines with dbt

    Implement modular, version-controlled ELT transformation pipelines using dbt (data build tool) including models, tests, and documentation generation.

  5. Configuring Incremental Materializations and Snapshots

    Configure dbt incremental models and snapshots to efficiently process changing data volumes while maintaining historical accuracy for slowly changing dimensions.

  6. Optimizing Query Performance and Cost

    Evaluate query execution plans to apply clustering keys, partitioning, and result caching; implement resource monitors and query queues to enforce cost governance SLAs.

  7. Capstone

    Deploy an end-to-end cloud data warehouse solution — including provisioned infrastructure, staged raw data, transformed star schema via dbt, automated incremental loads, and cost monitoring — validated by successful exec

Phase 7: Data Quality

  1. Defining Data Quality Dimensions for

    Explain the six core data quality dimensions (accuracy, completeness, consistency, timeliness, validity, uniqueness) and map each to specific failure modes in a batch ingestion pipeline.

  2. Profiling Source Data with Great

    Implement an automated data profiling suite using Great Expectations to generate expectation suites for a sample CSV dataset, capturing column distributions, null rates, and format constraints.

  3. Building Row-Level Validation Gates in

    Integrate Great Expectations validation checkpoints into an Apache Airflow DAG as branching operators that halt downstream tasks on critical failures and log warnings for non-critical anomalies.

  4. Designing Quarantine and Remediation Workflows

    Design a dead-letter queue pattern using cloud storage (S3/GCS) and a reprocessing DAG that isolates failed records, applies correction logic, and re-validates before merging back into the main pipeline.

  5. Implementing Cross-System Consistency Checks for

    Implement SQL-based cross-table referential integrity checks (foreign key validation, orphan detection) between staging and dimension tables, scheduled as independent Airflow tasks with alerting on threshold breaches.

  6. Constructing a Data Quality Dashboard

    Build a Superset dashboard visualizing daily data quality metrics (completeness %, validity rate, latency hours, quarantine volume) with SLA thresholds and automated email alerts via Airflow on breach.

  7. Capstone

    Deliver a production-ready data quality framework artifact: a Git repository containing (1) Great Expectations suites for orders/clicks data, (2) Airflow DAG with validation gates, quarantine, and remediation, (3) cross-

Phase 8: CI/CD for Data Pipelines using

  1. Foundations of CI/CD for Data

    Explain the core principles and components of CI/CD pipelines tailored for data engineering, distinguishing them from traditional software CI/CD.

  2. Version Controlling Data Pipeline Code

    Implement Git branching strategies and repository structures that support collaborative development and automated testing of data pipelines.

  3. Automating Unit and Integration Tests

    Design and implement automated unit and integration tests for SQL and Python-based data transformations using pytest and Great Expectations.

  4. Building Reproducible Pipeline Artifacts with

    Create reproducible, versioned Docker images for data pipeline components using multi-stage builds and Makefiles for build automation.

  5. Configuring CI Pipelines with GitHub

    Configure GitHub Actions workflows to lint, test, build, and scan container images on every pull request for a data pipeline project.

  6. Implementing CD Strategies for Staging

    Design and implement continuous deployment strategies using GitHub Actions to promote validated pipeline artifacts to staging and production environments with approval gates.

  7. Capstone

    Deliver a complete, documented CI/CD system for a modular data pipeline including: a GitHub repository with branching strategy, automated test suite (unit/integration), containerized components, GitHub Actions CI/CD work

Roadmap FAQ

What will I learn in Python & SQL Essentials for?+

Setting Up a Data Engineering, Python Fundamentals, Working with Functions, Introduction to Relational Databases and, Data Manipulation with SQL, and more.

What will I learn in Designing Data Models & Schema?+

Conceptual Data Modeling with Entity-Relationship, Logical Schema Design, Physical Schema Implementation in PostgreSQL, Dimensional Modeling, Schema Evolution Patterns, and more.

What will I learn in Batch Ingestion with Apache Spark?+

Spark Architecture and Core Concepts, Reading Structured Data with Spark, Handling Schema Evolution and Data, Partitioning Strategies for Efficient Batch, Idempotent Batch Ingestion with Delta, and more.

What will I learn in Streaming Ingestion with Kafka &?+

Kafka Core Architecture, Producing Events with Idempotence and, Consuming Events with Consumer Groups, Schema Evolution and Governance with, Building Resilient Pipelines, and more.

Learn this with an AI mentor

Adaptive quizzes, weakness tracking, streaks — free.

Start This Roadmap Free →