Foundations

Fundamentals of Data Engineering

What data engineers build and why: storage, pipelines, batch, streaming and the lifecycle.

  • Handwritten-style
  • Diagrams and tables
  • Worked examples

Who this notebook is for

Students, career switchers and analysts who want the whole data engineering picture before choosing which tool to learn next.

What you will be able to do

  • Describe the data engineering lifecycle from source to dashboard
  • Tell a data lake, a warehouse and a lakehouse apart and say when to use each
  • Explain batch versus streaming, CDC and the medallion layout
  • Name what makes a pipeline reliable, observable and cost-aware

What's inside

Pick a chapter and the notebook opens right there.

  1. The Big Picture & DE LifecycleWater Grid analogy, 5 lifecycle stages, schema-on-write vs readStart here
  2. Storage Systems & File FormatsBlock vs Object, Parquet row groups, Snappy/ZSTD, Avro & ProtobufStart here
  3. The Lakehouse & Table FormatsWarehouse vs Lake vs Lakehouse, Iceberg metadata tree, Delta Lake & HudiStart here
  4. Analytical Warehouses & Query EnginesOLTP vs OLAP, Snowflake/BigQuery decoupled compute, DuckDB & TrinoStart here
  5. Dimensional Modeling: Facts & DimensionsKimball vs Inmon, Star vs Snowflake, Surrogate keys & OBTStart here
  6. Advanced Dimensional Modeling: SCD & FactsSCD Types 1, 2, 3, 4, 6, fact table patterns & late arrivalsStart here
  7. Ingestion & Change Data Capture (CDC)Push vs pull, log-based CDC (WAL/Binlog), Debezium & Reverse ETLStart here
  8. Transformations & Modern ELTETL vs ELT, dbt models, materializations, incremental strategies & semantic layerStart here
  9. The Medallion ArchitectureBronze append, Silver cleanse, Gold marts, WAP pattern & GDPR purgeStart here
  10. Distributed Systems FundamentalsFallacies of computing, CAP theorem, hash partitioning & Raft consensusStart here
  11. Apache Spark: Architecture & ExecutionDriver, Executors, RDD vs DataFrame, DAG stages & shuffle boundariesStart here
  12. Spark Performance Tuning & JoinsCatalyst, Tungsten, Broadcast vs Sort-Merge joins, AQE & skew saltingStart here
  13. Event-Driven Systems & Apache KafkaCommit log model, topics, partitions, producers (acks/linger) & consumer lagStart here
  14. Advanced Streaming & Real-TimeISR replication, Exactly-Once (EOS), Event time, watermarks, windows & FlinkStart here
  15. Workflow Orchestration & AirflowDAG dependencies, Celery/K8s executors, Taskflow API (@task) & DagsterStart here
  16. Pipeline Reliability & OperationsIdempotency golden rule, backfilling, atomic swaps, retries with jitter & SLAsStart here
  17. Data Quality & Observability5 pillars of observability, Great Expectations, Soda, data contracts & OpenLineageStart here
  18. Governance, Security & FinOpsGDPR/PII masking, RBAC vs ABAC, row-level security & Snowflake/BigQuery cost cutsStart here
  19. Production Design PatternsLambda vs Kappa vs Lakehouse, Data Mesh, 100M clickstream blueprint & IoT pipelinesStart here
  20. FAANG Interviews & Senior Mindset4-step system design framework, ledger, ride tracking, Spark debug & 10 rulesStart here
  21. Modern Architecture & Open GovernanceData contracts (ODCS), open REST catalogs (Polaris), OpenLineage & FinOpsStart here
  22. Gap-Fill SupplementCapacity-planning math, streaming joins, OLAP cubes, sharding & replication, Snowflake essentialsStart here

Practice this

Put it to work on LakeBench.

Read the guide first

Short explainers that pair with this notebook.

Common questions

Is this the right notebook to start with?
Yes if you want the big picture first. Read it alongside the Python and SQL notebooks, which teach the languages you will use day to day.
Does it teach one specific tool?
It introduces many tools at overview depth, such as Spark, Kafka and Airflow. For depth on any one of them, use that tool's own notebook.
Can I read a sample before I commit?
Yes. The contents pages and the first pages of every notebook can be read online, so you can judge the style before going further.

More in Foundations

All notebooks