I’m pleased to say that I’ve added a new new DevOps Engineer expert badge to the sidebar of my website. This is thanks in part to recently passing the AZ-400 Designing and Implementing Microsoft DevOps Solutions exam and as I had previously passed the AZ-103 (now AZ-104) Azure Administrator associate exam, this entitled me to my second Azure expert badge.
Why take Microsoft exams?
Why? Several reasons. If nothing else, it gives you a great confidence boost that you understand the subject matter well enough to meet a certified standard.
Sometimes your organisation may have a requirement to have a certain number of individuals pass an exam in order for the company to achieve a Microsoft competency. It’s important to understand that these certifications belong to you, not your employer. This has a value to it. Changing job, means your former employer will lose these competencies and your new employer will gain them so make sure you list these certifications on your CV or resumé.
These role based exams help you with fine tuning your areas of expertise and focus on getting certified in the areas that you work in. With the recent exam renewal changes announced by Microsoft you can now recertify for free on an annual basis. This makes it much easier to obtain and renew multiple certifications when previously each exam had to be repeated in full every two years.
DevOps is a way or working that brings together the development world and the world of operations but development doesn’t mean you have to be a Java or C# application developer. You can “develop” your infrastructure deployments and script these using a number of languages like JSON (ARM templates), Terraform and Bicep. These infrastructure-as-code (IaC) deployments can then be managed, maintained, tested and deployed in the exact same way as an application developer works with their source code.
I actually started my IT career as a programmer and although I enjoyed it, I didn’t love it and I ended up branching out into other areas like systems admin, networking etc. Basically IT infrastructure deployments and management. DevOps through infrastructure-as-code allows you to do all of these things at once!
Infrastructure-as-code (IaC) is something I’ve dabbled in from time to time, mostly with ARM template deployments, but without any real focus on code management and automated deployments. There has been a clear focus shift in the industry on DevOps and it’s been obvious to me for a while that I should upskill in this area and really start to immerse myself in this strange new world.
I say strange, because it is a very different way of thinking for traditional IT pros. A few years ago, I was one of those IT professionals who always thought DevOps was just for developers and that’s all I really needed to know about it but how wrong I was.
Although I already felt I had a good handle on the Azure services that this exam would be covering, I knew there was a massive learning curve required with respect to the application development side of things. After all, I had done little more than write some PowerShell scripts and put together a few ARM templates for many years so I chose to just dive in and start learning.
The first port of call which is really the same for any Microsoft exam nowadays is to go to Microsoft Learn and study all of the modules for the exam that you wish to take. At the time of writing, that gave me around 50 hours of material straight away! That’s quite a lot of studying and I think I properly covered about 65% of the material provided there.
As a Microsoft certified trainer, I train fellow IT professionals quite regularly and I know for me (and probably most people) that the best way to learn is through hands-on learning. Reading helps, instructor led demos are better still but nothing beats actually doing something for yourself to help retain that information. It’s also the only way to truly understand a topic if you are in any way unsure.
Some additional resources I used were training videos on Pluralsight – training videos are a great accompaniment to reading the training materials as it helps to reinforce what you’ve already read and massively helps with the understanding.
For this exam, I knew there would be questions on both of Microsoft’s online developer platforms, GitHub and Azure DevOps. Thankfully, both of these are free to sign up for (with certain limitations). Armed with accounts for both of these platforms you can follow the hands-on labs found in the Azure DevOps Microsoft Learn modules I mentioned earlier and there are also great labs available on https://azuredevopslabs.com. This really brings it home in terms of learning as you can put the concepts that you are learning into action.
Finally, I took some practice exams on whizlabs.com – this prepared me for the types of questions I would face as there is a lot of training material to cover and therefore a wide scope of questions.
Overall, I found there was a massive amount of training material to cover for this exam. This seems to be the general consensus with this exam and not just the thoughts of someone coming from a non-developer background like me.
In terms of the exam itself, there was a lot of material that I studied for that just never came up in the exam at all. This is just the luck of the draw, the questions are selected randomly from a huge question pool so you need to cover as much of the material as possible to ensure a passing score. I’m not upset about this as I feel I’ve learned a huge amount about an area of IT that I will likely start to use more and more in my career and already I feel a lot more confident in talking to a potential customer about DevOps practices and methodologies.
Two exams, you say?
Yes, that’s right I took a second exam this month also. In fact, about two weeks prior to sitting the AZ-400 exam I took the AZ-140 Configuring and Operating Windows Virtual Desktop on Microsoft Azure (beta) exam.
Windows Virtual Desktop (WVD) is a service that I’ve had a lot of focus on for the past year. I had identified WVD as an area that I expected to see a lot of interest when I first deployed it around March 2019 during the public preview stage. I developed a hands-on training course for WVD during the summer of 2019 and have been teaching and updating this course ever since.
This has given me a lot of focus on the service by having to update my training materials as the service has evolved over the past two years. Once this new specialty certification was announced I was keen to take the beta exam and find out if I knew the materials as well as I thought.
I found the exam was quite thorough, not just focusing on the architecture and intricacies on the service itself but how to manage and monitor the service also. Once again, Microsoft Learn has some great materials for getting to grips with the basics but it’s definitely a service you should deploy for yourself in order to fully understand the solution and how each component works. It’s also important to explore the different solution architecture options available. For example, Azure AD Domain Services vs Active Directory Domain Services, disk based file shares vs serverless options, personal vs pooled host pools etc.
The downside to a beta exam of course, is that you don’t get your exam result immediately after the exam. Only when the exam is fully released will they start to release the beta results so I will have to be patient and find out if I passed or not.