How I prepared for Azure Developer Associate (AZ-204) Certification
Tags: azure, cloud, career, beginners
Published: 2021-09-10 09:38:44

I have been working with Azure since 2019. I am a Certified Azure Developer and AI Engineer. 

If you are just getting started with Azure, you can check my other blog [Azure Fundamentals article](https://abh1navv.hashnode.dev/azure-certifications-where-to-start-and-how-to-prepare)

## About the Exam

[Exam page](https://docs.microsoft.com/en-us/learn/certifications/exams/az-204)

>This exam measures your ability to accomplish the following technical tasks: develop Azure compute solutions; develop for Azure storage; implement Azure security; monitor, troubleshoot, and optimize Azure solutions; and connect to and consume Azure services and third-party services. 

Additionally Azure recommends 1-2 years of professional experience using Azure services before taking the exam.

The list of capabilities being tested are listed in the [Exam outline](https://query.prod.cms.rt.microsoft.com/cms/api/am/binary/RE4oZ7B)

I will divide this blog in 3 parts:
1. Assessing where I stood
2. Learning new skills.
3. Preparing for the exam

## Assessing where I stood

The first task for me was to create a checklist out of the services outline and examine where I stand on each skill required.

I divided my familiarity into 3 categories:
1. Experienced in using the Azure service = Easy. Examples,
    - VMs
    - App Service
    - Blob Storage
    - Logic Apps
2. Experienced in the concept but not enough experience with the Azure service = Medium. Examples,
    - ACR and Container Instances
    - Functions
    - IAM
    - Security
3. Completely new concept for me = Hard. Examples,
    - CosmosDB
    - Service Bus
    - API Management

I tagged the services or sections accordingly. Your list will obviously differ from my list based on your experience.

## Learning

Once I had the list created and figured out what I needed to learn,. I focused on the Medium and Hard sections during my learning phase. I will focus on the Easy phase only as part of the exam preparation.

1. Medium sections - 
    - Go through Microsoft Learn modules corresponding to the service. Sometimes they will also provide you sandbox environments to get some practice.
    - Complete a hands-on challenge 

2. Hard Sections - 
    - Start with Illustrative learning material like video demonstrations. A Youtube/FCC or Udemy tutorial would help you get started 
    - Complete a hands-on challenge

### Resources
1. Microsoft Learn learning paths - E.g. for [Serverless](https://docs.microsoft.com/en-us/learn/paths/create-serverless-applications/)
2. [Hands-on challenges](https://microsoftlearning.github.io/AZ-204-DevelopingSolutionsforMicrosoftAzure/) curated for AZ-204 related services
3. YouTube tutorials - For example, [a full course on AZ-204](https://youtu.be/-lf83pxEubs) , or individual topics like this one on [Service Bus]

Important points to learn while learning each section:
1. Deploying it with CLI/PowerShell - commands and the sequence of commands.
2. Modifying resources with the SDK provided for any programming language of your choice.
3. Pricing tier restrictions.
4. Security and Logging features.

Important Point: The programming language you will generally see in exercises and video tutorials is C#. In some cases you will see other languages mentioned too.

In the exam, there are two choices between languages - C# and Python. However, when it comes to the SDKs,  it does not matter which language you are learning in. The SDKs follow a consistent naming convention for classes and functions. So what you practice in one language will be applicable for all.

For e.g. the method getBlobClient() in Java will translate to GetBlobClient() in C#.

## Preparation

Now that we have learnt what we did not know, its time to look at the exam outline line-by-line and fill the gaps.

Let's look at the exam outline of one section:
**Implement secure cloud solutions**

- secure app configuration data by using the App Configuration and KeyVault API

- manage keys, secrets, and certificates by using the KeyVault API

- implement Managed Identities for Azure resources

Let's say I was well versed with the first two but did not know how to implement Managed Identities for Azure resources. I'm going to learn and practice this part now.

What I did was to Google the exact skill. It leads me to the [Azure docs](https://docs.microsoft.com/en-us/azure/active-directory/managed-identities-azure-resources/overview)

Azure has a doc corresponding to each skill with detailed steps which will get you some practice with th topic.

I did this with each topic which needed revisiting or I was not confident in.

## Final preparations

1. **A video based revision** - Find a video tutorial which is curated for the exam. It will help you connect the dots in terms of the exam.

2. **Practice tests** - Find as many practice tests to cover before the actual exam. It will help you understand if you need to revisit some topic. It also makes you aware of the type of exam questions.

## The exam

I scheduled the exam with Pearson Vue and took the exam at home.

Exam consisted of about 50-60 questions. Let's talk about the type of these questions

**MCQs**
- match the best service with the use case.
- decide the configuration values
- arrange the steps in sequence to be performed to set up a service
- fill in the blanks with CLI commands
- others

**Case Studies**
- contains a requirement definition
- a technical solution architecture 
- specific requirements in terms of security, scalability and access control

- the questions will generally ask about those specific requirements. For e.g. 
> This user needs to have access to these specific resources, what role will you assign to the user.
    >
    > This is how the experience needs to be for the user, what level of CosmosDB consistency will you choose.

### Misc. details:

1. It took me 3-4 weeks to complete my preparation and learning. (While working 9-5)
2. I did not rush with the videos or learning paths, I gave more attention to the hands-on exercises. Rushing with the videos will not be enough if you do not have experience working with the services.
3. My only video course was Alan Rodrigues' course on Udemy. Occasionally I refered to the YouTube video mentioned above(It is also not updated with the curriculum. Some topics are extra while some small topics could be missing).

---

You can connect with me on [Twitter](https://twitter.com/abh1navv)