How to assess · For hiring teams
How to Assess dbt Skills When Hiring
The test formats that actually work for dbt, what a strong answer looks like, sample questions and a scoring rubric you can use as-is.
The short answer
Assess dbt with a task, not a conversation: structure and test a small project, review a messy project, ai-scored assessment (e.g. cohesyve) or incremental-model conversation. Score it against written criteria you fix before you see any submissions, and weight the criteria that the role actually depends on.
- Structures projects in layers — staging, intermediate, marts — with clear naming and one purpose per model
- Writes tests that catch real problems: uniqueness at the right grain, relationships, accepted values, custom assertions
- Builds incremental models correctly, with a strategy for late-arriving data and a way to validate against a full refresh
- Uses macros and packages to remove duplication without hiding logic
Paste a job description; Cohesyve generates a role-specific assessment and rubric. Ten candidates free, no card.
dbt has become the standard for transformation in the warehouse, and the standard is easy to adopt badly: a thousand models with no layering, tests that only check for nulls, incremental models that silently miss late data, and a project nobody can navigate. The skill is not writing SQL in a dbt file. It is structuring a project so that models are trustworthy, tested, documented and fast to change. This page covers how to assess dbt for analytics engineering roles: project structure, modelling layers, testing, incremental logic and the discipline that keeps a warehouse maintainable.
Why dbt is worth testing
A badly structured dbt project is a slow-motion failure. Circular dependencies, duplicated logic across models, incremental models that drift from full refreshes, and tests that pass while the data is wrong — each is a habit, and each compounds. Testing shows whether a candidate builds projects that scale or projects that need rewriting in a year.
What strong dbt looks like
- Structures projects in layers — staging, intermediate, marts — with clear naming and one purpose per model
- Writes tests that catch real problems: uniqueness at the right grain, relationships, accepted values, custom assertions
- Builds incremental models correctly, with a strategy for late-arriving data and a way to validate against a full refresh
- Uses macros and packages to remove duplication without hiding logic
- Documents models and columns so a new analyst can find the right table
- Keeps the DAG clean: no circular logic, sensible materialisations, run times understood
- Treats the project as software: version control, CI, code review
Ways to assess dbt
Structure and test a small project
Provide raw source tables and a business question. Ask for a layered dbt project with staging and mart models, tests that would catch a duplicated order, and documentation. Ninety minutes or a capped take-home.
Pros
Cons
Best for Mid and senior analytics engineers.
Review a messy project
Provide a project with no layers, a test that checks only nulls, an incremental model missing late data, and duplicated logic. Ask what they would change first and why.
Pros
Cons
Best for Senior roles inheriting projects.
AI-scored assessment (e.g. Cohesyve)
Generate a dbt task from the job description — a project review, an incremental design, a testing strategy — with a rubric. Each candidate receives a different variant; reasoning is scored in writing.
Pros
Cons
Best for Screening a pool.
Incremental-model conversation
Describe a large event table with late-arriving data and ask how they would model it incrementally and validate it.
Pros
Cons
Best for Roles with large-scale models.
Cohesyve
Run a dbt assessment on your next opening
Cohesyve generates a unique dbt task per candidate from your job description, with the scoring rubric attached. Questions are different for every applicant, so they cannot be shared or looked up.
What to test
Project structure
Whether the project is navigable and layered.
Testing
Whether tests catch real problems.
Incremental logic
Whether large models are correct and efficient.
Documentation and workflow
Whether the project is maintainable.
Sample dbt questions
Why separate staging models from marts?
EntryLook for Staging cleans and renames one source; marts model business concepts; separation keeps logic findable and reusable.
A uniqueness test passes but revenue is double-counted. What might the test be missing?
MidLook for Uniqueness tested at the wrong grain or on the wrong column; test the business key at the mart's grain.
Design an incremental model for events that can arrive up to two days late.
MidLook for Lookback window in the incremental filter, merge on a unique key, periodic full refresh, and validation.
When would you use a macro, and when is it a mistake?
MidLook for Repeated logic across models; a mistake when it hides business logic or makes models unreadable.
A dbt project has four hundred models and a two-hour run. How do you approach it?
SeniorLook for Profile run times, materialisations, remove dead models, incremental where appropriate, layer discipline, and selective runs.
Red flags
- No layering; everything is one model or one folder
- Tests are only not_null
- Incremental models with no late-data handling
- Cannot explain a materialisation choice
- No documentation or CI
Scoring rubric
| Criterion | Weight | What strong looks like |
|---|---|---|
| Structure | 30% | Layered, named, one purpose per model. |
| Testing | 25% | Tests at the right grain that catch real problems. |
| Incremental correctness | 25% | Handles late data; validated against full refresh. |
| Maintainability | 20% | Documented, versioned, reviewed, efficient. |
Mistakes hiring teams make
- Testing SQL rather than project structure
- Not including an incremental scenario — the hardest part
- Accepting a project with only null tests
- Ignoring run time and materialisations
- Confusing dbt familiarity with modelling judgement
Roles that need dbt
Common questions
How do I assess dbt without a warehouse?
Project structure, testing strategy and incremental design can all be assessed on paper or with a local setup. Confirm hands-on with finalists.
What is the best single dbt question?
Ask how they would test for a duplicated order. Grain understanding and testing judgement show in one answer.
Is SQL skill enough for a dbt role?
No. SQL is necessary; project structure, testing discipline and incremental correctness are what make dbt work at scale, and they need to be tested separately.
How long should a dbt assessment take?
Ninety minutes for a small project; thirty to forty-five for a review exercise.
Cohesyve · Skill assessments for hiring
Test dbt before the first interview
Generate a role-specific dbt assessment from your job description and see who can do the work before you spend interview time on them.
1,500+
assessments completed
50%
faster time-to-hire
90%
completion rate
5 min
from JD to assessment
No credit card · 10 free candidates · Plans sized to your hiring volume
From the blog