Data engineering, one pattern at a time
Each course starts from a mistake real work produces – a query that runs but returns the wrong rows, a pipeline that drops events – shows why it happens, and ends with a fix you can practise.
Course 01 · Skill area 01 SQL & Querying · 24 lessons · 6 stagesLive
SQL course
Each lesson focuses on one SQL pattern, helping you write queries that return the results you expect. The lessons progress from basic to advanced, and every one comes with practice problems.
- FoundationsFilter your query results.Not started
- Summarising DataTurn rows into totals that answer the right question.Not started
- Combining DataJoin tables without inventing or losing rows.Not started
- Real-World DataSurvive dates, strings, and types as they actually arrive.Not started
- Analytical & SequenceRank, compare, and read order across rows.Not started
- Advanced SQLReshape, recurse, and measure whole journeys.Not started
Start with the introduction →See the whole course →Practise this course → 320 problems
SELECT c.customer_name, o.order_id, o.statusFROM customers AS cLEFT JOIN orders AS o ON o.customer_id = c.customer_idWHERE o.status = 'paid'ORDER BY c.customer_name, o.order_id;Every lesson is built like this: the mistake, then why, then the fix.
Read this lesson →Course 02 · Skill area 04 · 24 modules · 6 tracks · 7 gates · Plan v2.0Being written · 4 of 24 modules live
Distributed data processing
Partitions, shuffles, clocks, state, delivery guarantees, and the incidents they cause. Each lesson starts from a failure a real pipeline produces, shows the mechanism behind it, and ends with a fix and its cost.
- FoundationsRead
- Spark BatchPlanned
- Kafka Event LogsPlanned
- Streaming & Structured StreamingPlanned
- Flink Stateful StreamingPlanned
- Integration & ArchitecturePlanned
Six tracks, a partial ordering – not one compulsory 24-module playlist. The report picks the smallest dependency-complete path, using your known engine where the plan allows either.
Tool tracks · Hands-on · One engine at a time
Hands-on tracks for one engine at a time, open to early-access members. Spark is open now.
- Sparkunder skill area 04Early access · OpenOpen the Spark track →
- Kafkaunder skill area 04Planned
- Flinkunder skill area 04Planned
- Airflowunder skill area 05Planned
- Icebergunder skill area 03Planned
Practice Pass includes any 3 tool tracks; Coached Pass includes all 5.
The catalogue
| # | Course | Skill area | Status | Lessons | Practise now |
|---|---|---|---|---|---|
| 01 | SQL course | SQL | Live | 24 | 320 problems |
| 02 | Programming for Data (Python) | Python | Planned | – | 85 problems · 5 scenarios |
| 03 | Data Modeling & Storage Design | Modeling | Planned | – | 20 scenarios |
| 04 | Distributed data processing | Distributed | Being written | 4 of 24 modules | 15 scenarios |
| 05 | Pipeline Orchestration & Reliability | Orchestration | Planned | – | 5 scenarios |
| 06 | System & Scenario Judgment | Judgment | Planned | – | – |
One course per skill area. Levels are defined on the Skills page; the report tells you which lesson to read first.
Not sure where to start? Let the diagnosis order the lessons.
Assess SQL free. Your report lists the lessons to read, in the order that moves you forward.