<aside> 📖
Author: Lili Zhou · Published: March 16, 2025 · ⏱️ ~45 min read
Tags: dbt · data engineering · snowflake · analytics engineering · certification
</aside>
A hands-on reference guide covering everything you need to know about dbt — from project setup and models, to Jinja, macros, tests, and deployment. Written during my journey toward dbt certification, with real code examples and personal notes along the way.

Before everything started, i highly recommend register one dbt trail account with one data warehouse trail account (i used snowflake). Even your company using dbt, as you really need full admin control of your account, and play whatever data you want!
I took this course first, it is great course to get start and base on dbt cloud, but i was bit confused when i learning. So I also take a Udemy class meanwhile.
I would recommend go this first, and if you same as i was, you can choose an online course as well( more organized, from 0 to build a project)
This is good tool at initial stage, but it is base on dbt core ( i have no problem with it even i am learning dbt cloud directly)
https://learn.getdbt.com/learning-paths/dbt-certified-developer
The content here is more advanced and deeper.
My daily work has data engineer project, get hands on there. If you dont use dbt in your daily work or you are student, i would highly recommend get the free trail to implement each tasks and test each functions.
https://learn.getdbt.com/learning-paths/dbt-certified-developer
https://github.com/nordquant/complete-dbt-bootcamp-zero-to-hero/tree/main
https://app.slack.com/client/T0VLPD22H/C0VLZM3U2?selected_team_id=T0VLPD22H
There are a lot in dbt, keep learning, keep going.
Fight On!
Lili Zhou
HIGHLY recommend get snowflake trials + dbt cloud trials And gets hands on by uusing those 2
https://docs.getdbt.com/guides/snowflake?step=1
Config your snowflake connection here, put the database name and warehouse.
This database need contain schema which you will use and the new schema that will be created in here.
In project, the schema we put will be created in snowflake in the database we put above. At first, I was confused, but as I connected with snowflake, I can test it , it helps to understand how dbt works with my schemas.


https://docs.getdbt.com/docs/build/models
SQL statementsDBT has 2 big type of models, SQL models and Python Models
dbt has its recommended structure: https://docs.getdbt.com/best-practices/how-we-structure/1-guide-overview
Staging — creating our atoms, our initial modular building blocks, from source data, clean and standardize the data, one to one to source tables.Intermediate — stacking layers of logic with clear and specific purposes to prepare our staging models to join into the entities we want. Between staging and final models.