On January 31st, 2019, Microsoft released two new Azure Data exams: Implementing an Azure Data Solution (DP-200) and Designing an Azure Data Solution (DP-201). If you pass both of these exams, you become a Microsoft Certified Azure Data Engineer Associate. On May 24th, 2019, I passed DP-200: Implementing an Azure Data Solution! Yay :)
In this post, I share how I prepared for the exam and what my experience was like on the day of the exam.
(I have later also written about Exam DP-201 :) )
I passed exam DP-200 in May 2019, and published this post based on that version of the exam.
In June 2019 and December 2019, the exam was updated.
While most of the content in this post should still be relevant, there will be some differences between my skills measured checklist and the skills measured in this updated version of the exam. Make sure you reference the latest skills measured before you start studying! :)
Preparing for Microsoft Exam DP-200: Implementing an Azure Data Solution
When I started preparing for the DP-200 exam in February 2019, it had just been released. There were no courses, practice exams, or books available at that time. Instead, I relied heavily on Microsoft Learn and a lot of hands-on experience.
In short, this is how I prepared:
- Understand Skills Measured in Exam DP-200
- Complete Microsoft Learning Paths for Azure Data Engineers
- Read and Reference the Azure Docs
- Review Azure Solution Architectures
- Watch SQLBits Session Recordings
On April 3rd, 2019, the official classroom course was released, and all the course labs are available on GitHub. I did not take this course or work through the labs because I wanted to try the new learning paths from Microsoft, but you may find a more traditional course useful.
Update in January 2020: The official practice test for exam DP-200 is now available. I have had great experience with practice tests in the past and generally highly recommend them :) I did not try this one, though, as it was not available until after I had passed my exam.
Below, you can find more details about how I prepared with links to all the resources I used.
(If you are simply looking for information about exam questions and answers, please leave. Sharing or using that kind of information is a violation of the Microsoft Exam Policy and Non-Disclosure Agreement.)
Skills Measured in Exam DP-200
Every time I study for a Microsoft exam, my first step is always to check the skills measured. It helps me understand the scope of the exam, as well as the products and technologies covered. It is basically a pre-written checklist :)
The DP-200 exam skills measured is divided into main sections with several subsections and details. It tells you what you need to be able to do. For example, “configure elastic pools” or “design and implement data factory monitoring“. In addition to the official list of skills measured, I created my own checklist that lists the products and technologies covered in each section.
Implement Data Storage Solutions:
- Storage Accounts (Azure Blob Storage / Azure Data Lake Storage Gen1 and Gen2)
- Azure SQL Database (Managed Instances, Hyperscale, Elastic Pools, Elastic Jobs, Data Sync)
- Hybrid Solutions (SQL Server On-Premises vs SQL Server in Virtual Machines vs Azure SQL Database)
- Azure Synapse Analytics (formerly Azure SQL Data Warehouse)
- Cosmos DB
Manage and Develop Data Processing:
- Azure Data Factory
- Azure Databricks
- Azure Stream Analytics
- Event Hubs
- IoT Hubs
- Azure Data Explorer
Manage Data Security:
- Authentication vs Authorization
- Access Control and Permissions
- Azure Active Directory
- Data Masking
- Row-Level Security and Column-Level Security
- Data Encryption (Transparent Data Encryption, Encryption At Rest, Encryption In Motion)
- Threat Alerts
Monitor and Optimize Data Solutions:
- Monitoring Storage, Databases, and Processing
- Configuring Resource Usage Alerts
- Data Partition Bottlenecks
- Disaster Recovery and High Availability
- Data Retention Policies
- Import and Export Data
Microsoft Learning Paths for Azure Data Engineers
Once I had an understanding of the skills measured, I started on the Microsoft Learning Paths for Azure Data Engineers. Microsoft has done a great job making these learning paths engaging and easy to follow, and I enjoyed working through them.
The content is varied enough that studying doesn’t get boring. For example, there is a good mix of reading, watching videos, answering questions, and getting hands-on experience in sandbox environments.
Everything is gamified, meaning that you get experience points, badges, and trophies as you progress through the content and level up. If you don’t care about any of that, no problem! Just ignore it. But if you think it’s fun, it can add a little extra to your motivation :)
It shows you the learning paths, the recommended order to work through them, the estimated time for each, and their recommended modules. All the links are clickable in the PDF, so this is a useful overview and starting point.
However, I’m not sure if the guide is completely up-to-date. For example, the number of modules in the guide is different from the number of actual modules in the learning paths, the estimated times are different, and one learning path seems to have changed its name. Be aware of this so you don’t strictly follow just the guide, and as a result miss important modules that are not listed in it.
Microsoft Learning Paths for Exam DP-200
I worked through the following learning paths:
- Azure Fundamentals
- Azure for the Data Engineer
- Store Data in Azure
- Large Scale Data Processing with Azure Data Lake Storage Gen2
- Work with Relational Data in Azure
- Work with NoSQL data in Azure Cosmos DB
- Implement a Data Streaming Solution with Azure Streaming Analytics
- Implement a Data Warehouse with Azure SQL Data Warehouse
- Perform Data Engineering with Azure Databricks
I skipped most of the following learning path because I didn’t feel it was as relevant for the skills measured in the DP-200 exam:
The estimated total time for all ten learning paths was a little over 43 hours. However, I ended up skipping and skimming some of the content because I already knew it or had previous hands-on experience. In total, I spent around 25 hours on the nine learning paths I completed.
Azure Solution Architectures
After completing the Microsoft Learning Paths, I reviewed the Azure Solution Architectures. The learning paths helped me understand the technologies and products individually. The solution architectures helped me understand how they work together.
I personally focused on the architectures where I don’t have as much hands-on experience. For example:
SQLBits Session Recordings
I specifically call out SQLBits because they have high-quality content available for free :) It is also one of the more recent conferences with updated sessions and information from Microsoft, as well as from great community speakers.
Again, I personally focused on the topics where I don’t have as much hands-on experience. I also tried to watch as many of the Microsoft sessions as I could. For example:
- Azure Managed Instances—Your Bridge to the Cloud by Joey D’Antoni
- Build hybrid data platform with Azure SQL Database and SQL Server by Kevin Farlee from Microsoft
- Data Lake Design Patterns by Jason Horner
- Data Integration with Azure Cosmos DB, Data Factory and Databricks by Neil Millington
- Getting started with real-time analytics with Kafka and Spark in Microsoft Azure by Joe Plumb
- Hyperscale for Azure SQL DB by Kevin Farlee from Microsoft
- Inside SQL Server 2019 Polybase by Bob Ward from Microsoft (also relevant for Azure SQL Data Warehouse)
- Scalable real-time insights with Azure Stream Analytics by Krishna Mamidipaka from Microsoft
- Select Stars: A SQL DBAs Introduction to Azure Cosmos DB by Bob Pusateri
Just like with the solution architectures, you may want to watch other videos than me. You can find all the recordings on the SQLBits Previous Sessions page.
You may also want to review the session recordings from Microsoft Ignite. These are a little older, but you can find a lot of great information there.
Taking Microsoft Exam DP-200: Implementing an Azure Data Solution
The first step of taking the exam is to accept and sign a Non-Disclosure Agreement (NDA). Because of that, I can’t say much about the exam itself. Instead, I want to share some of my tips and advice, based on my own experiences.
You can find more information in Microsoft’s Certification Exam Policies and FAQs.
I had a total of 210 minutes for the exam. 180 minutes were for answering questions. The remaining 30 minutes were for reading instructions, signing the NDA, and providing feedback afterwards.
During the exam, you will see a big timer on the screen that shows how much time you have left. You will also see how many total questions you have to answer. Make sure you have enough time for all questions. According to Microsoft, exams usually have 40-60 questions. For a 180-minute exam, that means you have 3-5 minutes per question.
If you feel stuck on a question, I recommend that you mark it for review and return to it later. It’s better to get that one question wrong than not having time to answer the last five questions.
The question types can include case studies, repeated answer choices, single choice, multiple choice, drop-down lists, build lists, drag-and-drop, and more. You can see examples of exam question types in these videos from Microsoft Learning:
My tip is to read all questions bottom-up or from the end. Start by identifying the actual question, then look at the answer alternatives. Finally, work your way through the entire question text and all background information to find keywords, hints, and information to support the answer you think is correct.
The reason I share this tip is that you often get presented with a lot of background information, especially in the case studies. They usually describe all parts of a larger solution. By identifying the question first, you can focus in on the relevant content while reading.
Help! I don’t know the answer!
Even after all your hours of preparation, you might come across a question that takes you by surprise. I got a couple of these questions. My best advice is to use the elimination method to narrow down the options to the most likely answer. If that doesn’t help… take your best guess :) You will not be penalized for wrong answers. You simply don’t earn some or all of the possible points.
Pick the answer that sounds most likely or logical, and move on to the next question. Remember that you don’t need 100% to pass the exam, so don’t worry too much about a single question.
Finally, don’t overthink it. There are no “it depends” answers in the Microsoft certification exam world. Even though I wish I could add “yes, but, if…” to many of my answers, you can’t. You need to go in with a mindset that there is either a right answer, or a best answer.
Read the text and stay as objective as possible. Use the facts in the question to make your decision, and don’t fall into the “it depends” trap. If you’re unsure, pick the best answer. Again, don’t get stuck on any questions. Go back and review them at the end. You may even answer some other questions in the meantime that may trigger your memory.
In this post, I shared all the resources that I found and used. However, I expect more resources to become available after I publish this :)
If you are reading this after May 2019, your very first stop should be the official exam overview page. Always check the latest official information from Microsoft before your exam.
In total, I spent somewhere between 50-75 hours preparing for the DP-200 exam. That does not include the time spent getting hands-on experience working on real projects.
My key takeaway and final piece of advice is to work through the entire list of skills measured. Know how to do everything in the Azure Portal, and familiarize yourself with how to do everything by writing code. This will help prepare you for the exam, but you will also be confident that you have the skills needed to implement Azure Data Solutions in the real world.
Good luck! You can do this :)
(And once you’re done, you may want to look at Exam DP-201 next! :) )