dbt Analytics Engineering Certification Exam
The Analytics Engineering Certification Exam evaluates your ability to:
- build, test, and maintain models to make data accessible to others
- use dbt to apply engineering principles to analytics infrastructure

duration
number of questions
passing score
price
Recommended Experience
- SQL proficiency
- 6+ months building on dbt Core or Cloud
What's covered in the exam?
- Identifying and verifying any raw object dependencies
- Understanding core dbt materializations
- Conceptualizing modularity and how to incorporate DRY principles
- Converting business logic into performant SQL queries
- Using commands such as
run, test, docs
andseed
- Creating a logical flow of models and building clean DAGs
- Defining configurations in
dbt_project.yml
- Configuring sources in dbt
- Using dbt Packages
- Understanding logged error messages
- Troubleshooting using compiled code
- Troubleshooting
.yml
compilation errors - Distinguishing between a pure SQL and a dbt issue that presents itself as a SQL issue
- Developing and implementing a fix and testing it prior to merging
- Understanding and testing the warehouse-level implications of a model run failing at different points in the DAG
- Understanding the general landscape of tooling
- Using generic, singular and custom tests on a wide variety of models and sources
- Understanding assumptions specific to the datasets being generated in models and to the raw data in the warehouse
- Implementing various testing steps in the workflow
- Ensuring data is being piped into the warehouse and validating accuracy against baselines
- Understanding the differences between deployment and development environments
- Configuring development and deployment environments
- Configuring the appropriate tasks, settings and triggers for the job
- Understanding how a dbt job utilizes an environment in order to build database objects and artifacts
- Using dbt commands to execute specific models
- Updating dbt docs
- Implementing source, table, and column descriptions in
.yml
files - Using dbt commands to generate a documentation site
- Using macros to show model and data lineage on the DAG
- Understanding concepts and working with Git branches and functionalities
- Creating clean commits and pull requests
- Merging code to the main branch
- Understanding environment’s connections
- Understanding the differences between production data, development data, and raw data
Sample Questions
1

In this question, you are presented with a YAML file showing a source definition. The answer choices test your knowledge of source configurations. In the first drop-down you’re presented with event_ticket
and ticket_tailor
as options. While dbt does use the source name:
field by default, if you define an explicit schema in the file, it will use that value instead. That is why ticket_tailor
is the correct answer.
In the second drop-down you’re presented with tickets
and issued_tickets
as possible answer choices. The identifier parameter lets you specify the name of the table as it is named in the database. That is why issued_tickets
is the correct choice here.
2

dbt run --select model_d+
is the correct answer because model_d was the model that failed in the previous run and its downstream models would have been skipped previously. By selecting only model_d
and its downstream dependencies (children), we are able to rebuild only the models that failed in the last run.
3

When referencing a doc block in a YAML file for the description of a model, it is important to reference the name of the actual macro rather than the name of the markdown file.
So the correct answer is “The doc function can be used to reference the name of a doc macro to be used in a description.”