DE Mastery GitHub

Roadmap

Analytics engineer to data platform engineer

Follow the line from the top. Click a node to open it, and tick the circle when you finish it. Your progress is kept in this browser only.

Track Module Build your own Done

0 of 71 done

FND Foundations of distributed data ~20 h
  1. 01 Why distributed? 2 h
  2. 02 Partitioning & shuffles 3 h
  3. 03 Replication & consensus 3 h
  4. 04 Time 3 h
  5. 05 Delivery semantics 3 h
  6. 06 Storage formats 3 h
  7. 07 Back-of-envelope estimation 3 h
SPK Apache Spark ~70 h
  1. 01 Spark architecture 5 h
  2. 02 Lazy evaluation and the DAG 5 h
  3. 03 The DataFrame API 7 h
  4. 04 Spark SQL and data sources 5 h
  5. 05 Catalyst and the physical plan 6 h
  6. 06 Joins and aggregations at scale 6 h
  7. 07 Partitioning, bucketing, and the small-file problem 6 h
  8. 08 Memory, caching, and Adaptive Query Execution 6 h
  9. 09 UDFs and the Pandas API 4 h
  10. 10 Structured Streaming I — the micro-batch engine and exactly-once 6 h
  11. 11 Structured Streaming II — watermarks, state, and streaming SCD2 7 h
  12. 12 Testing and production Spark 7 h
  13. BYO Build your own mini columnar query engine 12 h
LKH Lakehouse & open table formats ~35 h
  1. 01 The Iceberg metadata tree 4 h
  2. 02 Commits & concurrency 4 h
  3. 03 Catalogs, branching & write-audit-publish 4 h
  4. 04 Row-level changes — SCD2, CoW & MoR 5 h
  5. 05 Table layout & maintenance 5 h
  6. 06 Delta Lake 4 h
  7. 07 Hudi & the format landscape 3 h
  8. 08 Engines on the lake 6 h
  9. BYO Build your own mini table format 8 h
JVM Java for data engineers ~20 h
  1. 01 Java for Python developers 4 h
  2. 02 Collections and streams 3 h
  3. 03 Build and dependencies 3 h
  4. 04 Serialization 3 h
  5. 05 Concurrency and the JVM 4 h
  6. 06 Testing and debugging 3 h
KFK Apache Kafka ~65 h
  1. 01 The log — events, state, retention and replay 3 h
  2. 02 Topics, partitions, replication — leaders, ISR, acks, durability 5 h
  3. 03 Producers — batching, idempotence, ordering under retries 5 h
  4. 04 Consumers & groups — manual commits, at-least-once, no loss across crashes 6 h
  5. 05 Transactions & exactly-once — read-process-write, read_committed, fencing 5 h
  6. 06 Schema Registry & contracts 5 h
  7. 07 Kafka Connect & CDC 6 h
  8. 08 Kafka Streams 7 h
  9. 09 Event & topic design 4 h
  10. 10 Testing & observability (apps) 4 h
  11. 11 Cluster configuration & partition reassignment 5 h
  12. 12 Security — SASL/SCRAM authentication & ACL authorization 4 h
  13. 13 Deployment architecture — multi-region DR 3 h
  14. 14 Operating & troubleshooting a cluster 3 h
  15. BYO Build your own mini Kafka 10 h
FLK Apache Flink ~65 h
  1. 01 Philosophy & architecture 4 h
  2. 02 DataStream API 6 h
  3. 03 Time & windows 6 h
  4. 04 Flink SQL & dynamic tables 6 h
  5. 05 Joins — regular, interval, temporal (point-in-time) & lookup 5 h
  6. 06 State, checkpoints & exactly-once — surviving a TaskManager crash 7 h
  7. 07 Process functions — timers, keyed state & broadcast rules 5 h
  8. 08 Table API & PyFlink — one pipeline, two languages 4 h
  9. 09 Streaming patterns — dedup, top-N, split/merge, MATCH_RECOGNIZE, OVER 5 h
  10. 10 CDC & lake sinks — Debezium changelog to Iceberg, commit on checkpoint, schema evolution 6 h
  11. 11 Performance & state at scale — backpressure, parallelism, redistribution, skew 6 h
  12. 12 Deploy & operate — upgrade a stateful job via savepoint without losing state 5 h
  13. BYO Build your own mini stream processor 10 h
STH Streamhouse ~35 h
  1. 01 Architecture history — Lambda → Kappa → lakehouse → streamhouse 3 h
  2. 02 Apache Paimon — primary-key tables, merge engines, partial-update 6 h
  3. 03 Apache Fluss — PK tables, lake tiering, streaming vs batch consistency 5 h
  4. 04 Iceberg as streaming storage — commit interval vs small files 4 h
  5. 05 Streaming dimensional modeling — SCD2 dim + fct with temporal (as-of) join 6 h
  6. 06 Streaming data quality — in-flight DQ, quarantine / DLQ, completeness 4 h
  7. 07 Serving layer — OLAP on the streamhouse 4 h
  8. 08 Latency tiers & cost — seconds, minutes, hours 3 h

You can now design and run batch, streaming and streamhouse pipelines.