Passing the Microsoft Certified: Azure Developer (AZ-204) Certification in 2025

Collin Smith
9 min readJul 15, 2024

--

The Microsoft Certified: Azure Developer Associate (AZ-204) certification exam is a challenging Azure Certification. In summary, this certification will validate building end-to-end solutions in Microsoft Azure to create Azure Functions, implement and manage web apps, develop solutions utilizing Azure storage, and more.

As stated in the Study guide for Exam AZ-204, the following skills will be tested:

  • Develop Azure compute solutions (25–30%)
  • Develop for Azure storage (15–20%)
  • Implement Azure security (15–20%)
  • Monitor, troubleshoot, and optimize Azure solutions (10–15%)
  • Connect to and consume Azure services and third-party services (20–25%)

Study approach

I always warm up to a certification with a good video course. This time I took advantage of Scott Duffy’s Udemy course. You can also ensure you get the right coupon by visiting his own sight at https://softwarearchitect.ca/. I have also used Alan Rodrigues videos in the past. I think Alan has more content to offer and Scott’s has less. I think you are good either way.

Practice Questions

Preparing for the exam will involve going over a significant number of practice questions to validate your knowledge to uncover weaknesses in your knowledge.

I did not use Alan Rodrigues Udemy Video Course, but he has 2 practice tests of 46 & 44 questions for a total of 90 questions

Practice Test Training

It is really important to practice with some testing materials to help you get familiar with what to expect on the exam. You will quickly understand your areas of weakness as well. I also think that using multiple question sources will help make you more well rounded.

When practicing for this test, I would say that the questions sets could use a bit of a refresh. Microsoft does update the tests relatively frequently but I found that even thought I was getting really high marks on my training, I did not get a real high mark on the actual test. I passed and that is what counts.

I know that the practice test makers put in as good as an effort to initially create the test but there is less incentive to update and refresh them unless they are actually going to pass the test themselves.

I will go over some of the question sets I used and my thoughts.

ExamTopics

Good set of questions that are really indicative of the actual exam questions. There is a bunch of annoying CAPTCHA and password items when using the free version which is understandable.

You have to discern between the “Most Voted” answer and the initial answer that ExamTopics presents. Generally, I would go with the answer that was selected based on the Community vote distribution after reading the comments. There is a Discussion popup and it will show you other viewers comments and generally the “Most Voted” response is the one you should really consider in my opinion. You can also open up the Discussion to see the arguments for the different choices.

Exam Topics does not actually provide 65 question sets and mark them. There currently are not a lot of questions there but they are quite realistic.

Whizlabs AZ-204 Practice Tests

The Whizlabs questions offer some detail that looks like the author actually passed the test. I found that Whizlabs and ExamTopics are the questions that best fit some of the actual questions you will see.

Microsoft Practice Assessment

Microsoft Practice Assessment for Exam AZ-204

This set of questions offers 50 question exams that do provide some insight into some of the key concepts that are important to the exam.

Scott Duffy’s Practice Test

Scott Duffy’s AZ-204 Practice Test

This test provides some questions that help you get into the mood of training for the exam in a general sense.

Key Services

Azure Event Hubs — a native data-streaming service in the cloud that can stream millions of events per section, with low latency

Azure Event Grid - a highly scalable, fully managed Pub Sub Message distribution service that offers flexible message consumption patterns using the MQTT and HTTP protocols. Also for workflows and listen to events emitted from a resource group

Azure Service Bus — a fully managed enterprise message broker with message queues and publish-subscribe topics. used to decouple applications and services from each other.

Event Hubs Capture — Can persist data onto Azure Blob Storage

Azure Functions — a serverless solution that allows you to write less code, maintain less infrastructure and save on costs

host.json — used for configuring Azure Functions for runtime-specific configurations

function.json — is used for triggers and bindings for Azure Functions

Service Bus 3 filter conditions:

  • Boolean filters — TrueFilter/FalseFilter
  • SQL Filters — SQL-like conditional expression that is evaluated
  • CorrelationFilters- set of conditions that are matched against one or more of an arriving messages’ user and system properties

WebJobs — enables you to run a program or script in the same instance as a webapp

Functions — a serverless solution that allows you to write less code, maintain less infrastructure, and save on costs.

Change Feed — a persistent record of changes to a container in the order they occur.

Shared Access Signature — provides secure delegated access to resources in your storage account. With a SAS, you have granular control over how a client can access your data.

API Management — a hybrid, multicloud management platform for APIs across all environments.

Always On Setting — keeps the app loaded even when there is no traffic

CORS Configuration — an HTTP feature that enables a web application running under one domain to access resources in another domain

App Service Environment(ASE) — provides a fully isolated and dedicated environment for running App Service apps securely at high scale

user-assigned managed identities — created as a stand-alone Azure resource, can be shared

system-assigned managed identities — created as part of an Azure resource and cannot be shared

Integration Service Environment — is a fully isolated and dedicated environment for all enterprise-scale integration needs.

Key Concepts

Cache-aside Pattern — to load data on demand and deal with unpredictable resource demand

Consistency levels

  • Strong — linearizability guarantee
  • Bounded staleness — reads are guaranteed to honor the consistent-prefix guarantee. Reads might lag behind writes by at most “K” versions of an item or by “T” time interval
  • Session — single client session reads are guaranteed to honor the consistent-prefix, monotonic reads, monotonic writes, read-your-writes, and write-follows-reads guarantees
  • Consistent Prefix — never see out-of-order writes or ensure that update operations made as a batch within a transaction are always visible together
  • Eventual — no ordering guarantee for reads and reduce latency

enable-automatic-failover — enables failover of the write region

App Service Pricing — https://azure.microsoft.com/en-us/pricing/details/app-service/windows/#pricing

To ensure that scripts run and resources are available before a swap operation occurs, you can update the web.config file to include the applicationInitialization configuration element.

Components of the change feed processor

Monitored container — any inserts and updates to the monitored container are reflected in the change feed of the container

Lease container — managing state across multiple change feed consumers

Compute instance — hosting the change feed processor to listen for changes

Delegate — used to define custom logic by using the .NET SDK change feed processor to process changes that the change feed reads

3 Actions to secure a Shared Access Signature(SAS)

  • Always use HTTPS
  • Use Azure Monitor and Azure Storage logs to monitor the application
  • Define a stored access policy for a service SAS

Integration Service Environment (ISE) — provides a dedicated Logic Apps runtime that can directly integrate with systems in a virtual network, including on-premises via an ExpressRoute.

Instrumentation Key — uniquely designates an Application Insights resource and is the only piece of information required to provide authorized access for the purpose of uploading telemetry from monitored applications to Application Insights

Service Principal — defines the access policy and permissions for the user/application in the Microsoft Entra tenant

3 types of service principal: Application, Managed Identity, Legacy

Lease Container — serves as a storage mechanism for managing state across multiple change feed consumers.

Application — if you have a multi-tenant application in a Microsoft Entra ID tenant and you need to grant permission to access the Microsoft Graph API in tenant

delegated permissions — ensure that Microsoft Entra ID signed -in user information can be retrieved by app1 by using Microsoft Graph.

System-assigned managed identity — if you need to conduct operations with an Azure Key Vault without managing the rotation of a secret. — Also the service principle associated with the associated application cannot be deleted

User delegation — if you need a shared access signature(SAS) token to be secured with Microsoft Entra ID credentials

Delete — delete rule action is required to implement the Azure Storage lifecycle policy for append blobs

EventProcessorClient — the event processor client to ensure that multiple load-balanced instances of a .NET application (version 5.0) can be used to scale event processing

ARR Affinity — allows an end user to talk to the same Azure App Service worker instance until the session finishes

Tips when looking at questions:

  • Whenever you see an await on a line of code, you will need to ensure that the command has Async in it or is asynchronous

Some areas that I wished I knew more about(and you should too)

Azure Redis Data Types such as List(ordered), Set(unordered)

Azure Redis Policies:

  • noeviction: New values aren’t saved when memory limit is reached. When a database uses replication, this applies to the primary database
  • allkeys-lru: Keeps most recently used keys; removes least recently used (LRU) keys
  • allkeys-lfu: Keeps frequently used keys; removes least frequently used (LFU) keys
  • volatile-lru: Removes least recently used keys with the expire field set to true.
  • volatile-lfu: Removes least frequently used keys with the expire field set to true.
  • allkeys-random: Randomly removes keys to make space for the new data added.
  • volatile-random: Randomly removes keys with expire field set to true.
  • volatile-ttl: Removes keys with expire field set to true and the shortest remaining time-to-live (TTL) value.

Azure Blob Tags vs Azure Blob Metadata — Tags are about groups of Blobs and Metadata is more about providing information within the Blob itself

API Policies Management — I don’t think I had a good grasp on setting up the API Policies and it would have been nicer to have that

Azure App Service Profiler Enablement — Having more knowledge around setting up the Azure App Service Profiler would have been nice too.

Conclusion

You will definitely expand your knowledge of the developer related Azure services by working on this certification. A video course and practice questions will help you get there.

Best of luck on your efforts as you work towards achieving the Microsoft Certified: Azure Developer (AZ-204) Certification!

--

--

Collin Smith
Collin Smith

Written by Collin Smith

AWS Ambassador/Solutions Architect/Ex-French Foreign Legion

Responses (2)