How to build a high-quality dbt project with proper documentation, tests, and reusable data models.
This course is no longer available.
Explore other courses
Course overview
Do you write a new query every time you need to answer a new business question? Do you find issues in your data when writing these queries but have no way to proactively find them? Do you find the same business logic coded over and over again with no lasting way to keep it consistent?
If your data stack...
- lacks standardization
- lacks organization
- lacks documentation and testing
- depends on a BI tool to store SQL and data models
- contains the same code in lots of different places
- gives minimal insight into data quality
...then this course is for you.
You will leave this course feeling confident that you can introduce (or refactor) dbt to create a data stack with minimal tech debt that will help you scale your team's data.
Requirements:
- proficiency in SQL
- proficiency in Git
- basic understanding of data transformation
- basic understanding of data warehouses
01
You are a data analyst, data engineer, or other type of data professional who has heard about dbt but hasn't had the chance to learn it.
02
You are a beginner to intermediate-level data professional looking to add a new tool to your skillset.
03
You are ready to leverage your SQL knowledge and find a better way to transform and organize your data.
Build a dbt project
Document your data following best practices
Define data quality tests using dbt packages
Write reusable data models and macros
Active learning and exercises with your data peers
Live sessions
Learn directly from Madison Schott in a real-time, interactive format.
Lifetime access
Go back to course content and recordings whenever you need to.
Community of peers
Stay accountable and share insights with like-minded professionals.
Certificate of completion
Share your new skills with your employer or on LinkedIn.
Maven Guarantee
This course is backed by the Maven Guarantee. Students are eligible for a full refund up until the halfway point of the course.
16 lessons • 4 projects
What are the basic elements of a dbt project and why are they important?
dbt's Superpower: Modularity
What's a dbt Profile?
The Role of dbt_project.yml
The Different Directories of a dbt Project
The Elements of a dbt Style Guide
Write your own dbt style guide
dbt features to help you avoid the most common problems with data documentation
Problems Solved by dbt Doc Blocks
Lineage 101: Using it to Write Better Models
Why Exposures Are Necessary
Add doc blocks and staging models to your dbt project
Apply tests to sources and models to help prevent downstream data fires and data quality issues
How to Use dbt Generic Tests
How to Define Freshness
Top dbt Testing Packages
Jinja Basics
How to Write a Custom Test
Add tests to sources and models in your dbt project
The same code should only ever be written once... write your code the dbt way by making it modular.
Mart vs Intermediate Models: What is What?
Refactoring Code to be Reusable
How to Write a Reusable Macro
Refactor your code to make it reusable
Senior Analytics Engineer and Technical Writer
Hi I'm Madison and I'll be your course instructor!
I was first introduced to dbt while working as a data engineer at Capital One. After first learning about dbt, I've been obsessed with the tool, as it inspired me to switch from data engineering to analytics engineering.
In my first few years as an analytics engineer, I built out an entire modern data stack at Winc from data warehouse to orchestration pipeline.
The biggest challenge here was refactoring SQL queries stored in a BI tool to be used in dbt. This caught me a lot about what not to do and how to build data models the right way.
Now I work at ConvertKit where I've helped build out our dbt project with best practices and reusable data models.
When I'm not solving data problems there, I'm most likely sharing what I've learned with the readers of my Learn Analytics Engineering newsletter.
3-5 hours per week
Mondays & Wednesdays
7:00pm - 8:30pm EST
Sessions will take place every Monday and Wednesday evening for 90 minutes, for 2 weeks.
May 13, 2024
The first session of the course.
May 15, 2024
The second course session.
May 20, 2024
The third course session.
May 22, 2024
The last session of the course.
Active hands-on learning
This course builds on live workshops and hands-on projects
Interactive and project-based
You’ll be interacting with other learners through breakout rooms and project teams
Learn with a cohort of peers
Join a community of like-minded people who want to learn and grow alongside you
Yordan Ivanov