All roadmaps
Data engineer
Data engineer path
From SQL and Python to pipelines, Spark and the cloud, in the order a first data engineering job asks for them.
- about 18 weeks at an hour a day
- 5 stages, 37 steps
SQL you can rely on
about 4 weeks · 7 stepsAfter this stage: You can write joins, CTEs and window functions without looking them up.
- What is data engineering?LessonFreeWhat the job is before the tools.01
- Aggregations and groupingLessonLockedGROUP BY and HAVING.02
- Multi-table joinsLessonLockedWhat each join keeps.03
- Subqueries and CTEsLessonLockedBreak a hard query into steps.04
- Window functionsLessonLockedThe data engineering benchmark.05
- Deduplication and incremental upsertsLessonLockedLoad only what changed.06
- SQL 50 practice sheetPractice50 ordered problems.07
Python for pipelines
about 4 weeks · 9 stepsAfter this stage: You can write a script that reads, cleans and loads data.
- Why Python for data engineers?LessonFreeWhat Python is used for here.08
- Lists, dictionaries and setsLessonLockedThe containers behind every record.09
- File I/O and data formatsLessonLockedCSV, text and Parquet basics.10
- Working with JSONLessonLockedThe format of most APIs.11
- Working with REST APIsLessonLockedPull data from a service.12
- Retries, backoff and idempotencyLessonLockedMake a rerun safe.13
- Python 100 practice sheetPractice100 ordered problems.14
- Pandas: what is pandas?LessonFreeTables in Python.15
- Data cleaning and type castingLessonLockedFix the data before you load it.16
Pipelines and orchestration
about 3 weeks · 7 stepsAfter this stage: You can describe a pipeline, schedule it and handle a rerun.
- What is a data pipeline?LessonFreeSources, steps and destinations.17
- Scheduling and cronLessonFreeRun a job on a timetable.18
- Idempotent loadsLessonLockedRun twice, get the same result.19
- Backfills and catchupLessonLockedFill in the past safely.20
- CDC: inserts, updates, deletesLessonLockedCapture what changed.21
- Case study: load only what changedCase studyAn incremental load on real-looking data.22
- Case study: do the two systems agree?Case studyReconcile a source with its copy.23
Warehouse, Spark and quality
about 4 weeks · 8 stepsAfter this stage: You can model a star schema, use Spark and add checks.
- OLTP vs OLAP mental modelLessonLockedWhy warehouses are different.24
- Star schema: facts, dimensions, grainLessonLockedThe shape of analytics data.25
- PySpark architecture: the one explanationLessonFreeHow Spark runs your code.26
- DataFrame basicsLessonLockedRead, filter and select in Spark.27
- Joins and optimization strategiesLessonLockedJoins at scale.28
- What is data quality?LessonFreeWhy checks belong in the pipeline.29
- Case study: which events are broken?Case studyFind bad records before they spread.30
- PySpark 40 practice sheetPracticePractise the Spark moves.31
Cloud, projects and interviews
about 3 weeks · 6 stepsAfter this stage: You have projects to show and answers for the system design round.
- What is cloud computing?LessonFreeThe vocabulary you need.32
- Data lakes versus warehousesLessonFreeWhere each one fits.33
- ProjectsProjectBuild a pipeline end to end.34
- 45-day data engineer planToolA daily plan if you want a fixed schedule.35
- Data engineer roadmapToolThe full list of topics and what to learn when.36
- Mock interviewToolPractise out loud and get scored.37