Learning never exhausts the mind.
Disclaimer: you won’t find any sample questions in this post. Sorry to disappoint.
dbt has recently released its first Certification Program and the first dbt Analytics Engineering Certification exam. As a dbt enthusiast and to assess my skills with an official exam, I have taken and passed the exam on 10th of August. This is the holy grail you get when you achieve it:
In this short article I will go through the preparation I did to get ready for this exam, my past experience with dbt, the exam content and difficulty and then my personal opinion about added value and drawbacks of certifications in general.
Exam preparation and experience required
dbt has done a great job to create a lot of content around exam preparation. The most valuable resource is the official study guide that you can find here. You have to feel confident in all the topics detailed in this study guide before registering to the exam. But studying won’t get you anywhere if you don’t have at least six months of intensive practice with dbt. Many of the questions are based around scenarios that you can only grasp fully if you have gotten your hands dirty with dbt on a real project.
I personally have a bit more than one year of experience with dbt and my experience goes from working on a large project, contributing to some dbt packages, writing articles and engaging with the dbt community via discourse and slack. All this experience gave me a broad vision on dbt practically and conceptually but I could not have passed this exam without a significant amount of study as well. dbt is getting huge and chances are you are probably only using 50% of all its functionalities on a daily basis. Well, the bad news is that the exam covers 100% of dbt functionalities (exception to features that are specific to adapters — for instance features specific to Snowflake, BigQuery, etc.) and to master all those features that you might not use on a daily basis, the only solution is to study. The good news is dbt documentation is really well written with examples and FAQs. I would strongly recommend having the “jaffle_shop” repository cloned locally and to put directly into practice the new features you read from the documentation. You will memorize much faster if you see it in action than just written within the documentation. When experimenting you should test all different edge cases with all the parameters that a feature can accept (for instance play around the four different values that the “on_schema_change” parameter can take).
- At least six months of experience
- Study the official documentation from dbt website
- The Docs part
- The Reference part
- Practices features you are not acquainted with on a playground project such as the “jaffle shop”
Exam content and difficulty
As per dbt website, here are some key figures regarding this exam:
- Duration: 2 hours
- Number of questions: 65
- Passing score: 65%
- Price: 200 USD
I took one hour forty minutes to finish it and did not have the impression to go slowly. 65 questions in two hours translate into a bit less than two minutes per question and that is quite intense (Google Cloud exams in comparison are forty questions long for two hours). Questions are also quite long at times as they describe a real world situation and just getting the full context will require you to be fully focused and read multiple times the question. The questions are not only “multiple choices” and consist of the following:
- Multiple choices questions
- Series of True/False assertions regarding the same question context (I assume you get the point for the question only if you assert all the True/False assertions). Those questions are better referred to as DOMC questions.
- Ordering a dbt statement. Multiple blocks of code are given and you need to order those.
- Drop-down list of statements that need to be allocated to a text they relate to.
- Fill in the blanks with options.
The majority of questions are not straightforward and will require you to put your brain into full motion. It is clearly a great job done by the dbt team to have made an exam that is at the same time not easy but relevant as it assesses all the facets of the dbt eco-system and analytics engineering. On the latter point there will be a few generic SQL questions that are not directly related to dbt.
Having quite some experience taking certifications in the past few years, I would classify this exam as difficult and that is actually a good thing as an easy certification lowers significantly the value of a certification. This will also give us confidence here at Astrafy when screening our future Analytics Engineers that candidates with this certification have proved their skills with dbt.
Added value of certifications
Every technology nowadays has its set of certifications. AWS and Azure have 12 certifications, Google Cloud has 11 and so goes on for all major technology providers. While those certifications have become a business (we will discuss the drawbacks of certifications in next section), clear benefits exist and will remain:
- Get recognized for the skills you’ve honed via docs, tutorials, and on-the-job practice, with validation from the team that builds and maintains the solutions.
- Stand out to recruiters seeking expertise in the fields covered by the certification
- Gain additional knowledge on the topics covered by a certification. Getting certified forces you to study things you would have never heard of otherwise. And it will certainly help you in your daily projects to implement best practices that you didn’t know before.
All those benefits are valid for this dbt certification. This certification is quite new and it will clearly help to stand out as one of the few to have it. As it is not an easy certification, it is a clear stamp that you have solid skills on dbt. And last but not least it will force you to read and study all the dbt official documentations; you will learn a lot of new concepts that will be very valuable for your dbt projects.
Drawbacks of certifications
As mentioned above, one of the main drawbacks of certifications nowadays is that it has become a clear business with an important source of revenues for companies. Those revenues need to scale and this is a reason new certifications emerge now and then with increasing costs and a “2-years” retake policy. The fact that certifications are driven by business incentives lead sometimes to non-relevant certifications, lower degree of difficulty for certifications and high costs that impede certain classes of population to take the exam (for instance students or employees that cannot get the certification fee covered by their company).
Another important drawback of certifications is that many employees brag about it as a set-stone proof of expertise. Certifications do not give you that privilege and only real-life projects and being recognized by your peers will allow you this expert status. I have for instance passed the “Professional Cloud Network Engineer” certification a few months ago but I would never consider myself an expert. I crammed for it by studying many concepts I had never heard before and eventually passed the exam. I wanted to achieve it as networking is often a blocker in all projects I have been dealing with on Google Cloud. Getting this certification forced me to hone my skills but I am far from being an expert in networking.
A certification assesses general concepts via multiple choice questions and while certifications can be hard to attain, those will only demonstrate that you have a certain level of knowledge on that topic. You might as well have purchased a dozen “practice exams” and get your way by memorizing a lot of questions. It is therefore important to complement certifications with real life experience.