Python · SQL · Web Dev · Java · AI/ML tracks launching soon — your one platform for all of IT

dbt — Zero to Advanced

A complete dbt track for beginners, analytics engineers, and data teams: models, sources, testing, documentation, Jinja, incremental models, snapshots, CI/CD, and production project structure.

Self-paced September 2026
Absolute beginners who need dbt explained without jargon
Analytics engineers building transformation pipelines
Data engineers standardizing SQL across a team
Anyone prepping for an analytics engineering interview
20
Live modules
0
Queued modules
4
Sections
63+
Concepts covered
21h
Total reading
0
Prerequisites
This track starts with what dbt actually does, then builds toward production analytics engineering. You will learn what a transformation layer is, how models and the DAG work, how to test and document data, how to write reusable Jinja, and how real teams structure, test, and ship dbt projects in CI/CD.
Learning path
dbt Foundations
What dbt is, how it compiles and runs, project setup, models, sources, and ref().
Core Development
Materializations, incremental models, testing, documentation, and Jinja/macros.
Intermediate dbt
Packages, seeds, snapshots, environments, and hooks/operations.
Production and Advanced
Project structure, performance, CI/CD, testing strategy, and system design.
// Curriculum

20 Live Modules. 0 Modules Queued.

Follow in order. Each module begins with a simple explanation, then adds the production detail analytics engineers need.

1
Section 1dbt Foundations
MODULE 01LIVE

What is dbt?

dbt explained from scratch: what a transformation layer is, ELT vs ETL, and why analytics teams standardized on dbt.

ELTTransformationAnalytics engineering
60 min
Beginner
Start →
MODULE 02LIVE

How dbt Works: Compile, Run, and the DAG

What actually happens when you run dbt: Jinja compilation, the dependency graph, and the SQL dbt sends to your warehouse.

DAGCompilationdbt run
60 min
Beginner
Start →
MODULE 03LIVE

Setting Up a dbt Project

dbt_project.yml, profiles.yml, connecting to a warehouse, dbt Core vs dbt Cloud, and your first dbt run.

dbt_project.ymlprofiles.ymlSetup
60 min
Beginner
Start →
MODULE 04LIVE

Models: SELECT Statements as the Building Block

What a dbt model actually is, how a .sql file becomes a table or view, and naming/organization conventions.

ModelsSELECTConventions
60 min
Beginner
Start →
MODULE 05LIVE

Sources, ref(), and the Dependency Graph

Declaring raw sources, source freshness, and how ref()/source() build the DAG that makes dbt run models in the right order.

source()ref()DAG
60 min
Beginner
Start →
2
Section 2Core dbt Development
MODULE 06LIVE

Materializations: View, Table, Incremental, Ephemeral

What SQL each materialization compiles to, and how to choose the right one for a model.

MaterializationsViewTableEphemeral
65 min
Intermediate
Start →
MODULE 07LIVE

Incremental Models in Depth

is_incremental(), unique_key, incremental strategies (merge/delete+insert/append), and full-refresh recovery.

Incrementalis_incremental()unique_key
70 min
Intermediate
Start →
MODULE 08LIVE

Testing: Generic and Singular Tests

unique, not_null, accepted_values, relationships, custom generic tests, and singular SQL tests.

Testsuniquenot_nullrelationships
65 min
Intermediate
Start →
MODULE 09LIVE

Documentation: Descriptions, Doc Blocks, and dbt Docs

schema.yml descriptions, doc blocks, the dbt docs site, and documentation as a team habit, not an afterthought.

Documentationdbt docsschema.yml
55 min
Intermediate
Start →
MODULE 10LIVE

Jinja and Macros: Templating SQL

Jinja control flow inside SQL, writing reusable macros, and the line between "helpful templating" and "unreadable SQL".

JinjaMacrosTemplating
70 min
Intermediate
Start →
3
Section 3Intermediate dbt
MODULE 11LIVE

Packages and dbt_utils

Installing community packages, packages.yml, dbt_utils highlights, and when to write your own vs reuse one.

Packagesdbt_utilspackages.yml
55 min
Intermediate
Start →
MODULE 12LIVE

Seeds: Loading Static Reference Data

What seeds are for, CSV-to-table loading, seed configs, and where seeds stop being the right tool.

SeedsCSVReference data
50 min
Intermediate
Start →
MODULE 13LIVE

Snapshots: Type 2 Slowly Changing Dimensions

How dbt snapshots track history, timestamp vs check strategy, and the SCD Type 2 columns dbt manages for you.

SnapshotsSCD Type 2History
65 min
Intermediate
Start →
MODULE 14LIVE

Variables and Environments

vars, env_var(), target contexts, and running the same project safely across dev, staging, and prod.

VariablesEnvironmentstarget
55 min
Intermediate
Start →
MODULE 15LIVE

Hooks and Operations

pre-hook, post-hook, on-run-start/end, and run-operation for grants, audit logging, and one-off maintenance.

Hooksrun-operationGrants
55 min
Intermediate
Start →
4
Section 4Production and Advanced dbt
MODULE 16LIVE

Project Structure and Layering

Staging, intermediate, and marts layers; folder conventions; and how a project stays sane past 200 models.

StagingIntermediateMartsStructure
65 min
Advanced
Start →
MODULE 17LIVE

Performance and Query Optimization in dbt

Finding slow models, materialization trade-offs at scale, incremental strategy tuning, and warehouse-specific configs.

PerformanceQuery optimizationIncremental strategy
70 min
Advanced
Start →
MODULE 18LIVE

CI/CD for dbt Projects

Slim CI, dbt build in a pipeline, state comparison (--defer, --state), and safe deploys to production.

CI/CDSlim CI--defer
70 min
Advanced
Start →
MODULE 19LIVE

Testing Strategy and Data Quality at Scale

Where to test, test severity, freshness SLAs, and building a data-quality culture instead of a pile of assertions.

Data qualityTest strategySeverity
65 min
Advanced
Start →
MODULE 20LIVE

dbt Interview and System Design Guide

Worked system-design questions, a vocabulary cheat sheet, common interview traps, and rapid-fire prep — the capstone module.

Interview prepSystem designCapstone
90 min
Advanced
Start →
Recommended foundation before advanced dbt projects

dbt becomes much easier when you also understand SQL, data warehouses, and pipeline design. This track teaches dbt directly, then points naturally into the Snowflake and Data Engineering paths.

Explore Snowflake →
Share

Discussion

0

Have a better approach? Found something outdated? Share it — your knowledge helps everyone learning here.

Continue with GitHub
Loading...