Subject matter expertise in designing and implementing solutions that run on Microsoft Azure, including aspects like compute, network, storage and security; that is what one can (and should) expect about the level of expertise of every self-respecting Solutions Architect.
The Microsoft Azure Solutions Architect Expert certification is not for candidates who are just starting to work with cloud technologies or are new to Azure, and is considered an expert certification.
Azure Solutions Architect Expert certification covers networking, virtualization, identity, security, business continuity, disaster recovery, data platform, budgeting, and governance. Microsoft states that candidates should be able to manage how decisions in each area affect an overall solution. In addition, candidates should have expert-level skills in Azure administration and have experience with Azure development and DevOps processes.
To earn the “Microsoft Azure Solutions Architect Expert” certification title, you won’t need any Associate-level certification, but you do need to have succesfully taken the Microsoft Azure Fundamentals (AZ-900) exam. In this blog article, I share available learning materials (free and paid) that prepare you for the Azure Solutions Architect exams from Microsoft, but more importantly, these learning materials provide you with the knowledge about designing and implementing Microsoft Azure solutions, technologies and services.
Before we dive into the learning materials
You want an Azure environment to build things yourself. I cannot say and emphasize this enough. Think of it as learning to drive: you can’t do that without being in a car. So, the first thing you’ll do is create your Azure environment. Via this link you can use various Azure services free of charge for 12 months.
Virtual training courses
There are various virtual training courses to follow, based on registration or on-demand. Below is an overview of the recommended virtual training events:
- Azure Solutions Architect AZ-303/AZ-304 Certification Training Course by CloudSkills.io. Within less than 15 hours (!) of video training, Microsoft MVPs Tim Warner and Mike Pfeiffer prepare you for the Azure Solutions Architect Expert (AZ-303 and AZ-304) certification exam.
- AZ-303 Azure Architecture Technologies Exam Prep 2021 by Scott Duffy. This Udemy course (consisting of 12 hours on-demand videos and 14 articles) is intended to help learners pass the Microsoft AZ-303 Azure Architect Technologies certification exam the first time.
- AZ-304 Azure Architecture Design Exam Prep 2021 by Scott Duffy. This Udemy course (consisting of 7.5 hours on-demand videos and 5 articles) is intended to help learners pass the Microsoft AZ-304 Azure Architect Design certification exam the first time.
Microsoft Learn
Microsoft Learn provides you with free online training and learning paths for different Microsoft technologies. Here are the relevant Microsoft Learn modules and learning paths for the AZ-303 and AZ-304 Exams:
- Architect network infrastructure in Azure learning path - Learn | Microsoft Docs
- Architect storage infrastructure in Azure learning path - Learn | Microsoft Docs
- Architect compute infrastructure in Azure learning path - Learn | Microsoft Docs
- Architect infrastructure operations in Azure learning path - Learn | Microsoft Docs
- Architect a data platform in Azure learning path - Learn | Microsoft Docs
- Architect message brokering and serverless applications in Azure learning path - Learn | Microsoft Docs
- Architect modern applications in Azure learning path - Learn | Microsoft Docs
- Architect API integration in Azure learning path - Learn | Microsoft Docs
- Architect migration, business continuity, and disaster recovery in Azure learning path - Learn | Microsoft Docs
Links to Microsoft articles on the specific topics
Below are several links to articles on topics that may come up in the exam. To prepare for the exam, you’d be wise to go through these articles and, where necessary, build the components yourself in your Azure environment.
Exam AZ-303: Microsoft Azure Architect Technologies
Implement and Monitor an Azure Infrastructure
Implement cloud infrastructure monitoring
- monitor security
- monitor performance
- Create diagnostic settings to send platform logs and metrics to different destinations - Azure Monitor | Microsoft Docs
- Resource Manager template samples for diagnostic settings - Azure Monitor | Microsoft Docs
- Azure Monitor overview - Azure Monitor | Microsoft Docs
- Monitor an Azure resource with Azure Monitor - Azure Monitor | Microsoft Docs
- Azure Monitor Workbooks Overview - Azure Monitor | Microsoft Docs
- Azure Monitor Workbooks Visualizations - Azure Monitor | Microsoft Docs
- Collect data from an Azure virtual machine with Azure Monitor - Azure Monitor | Microsoft Docs
- monitor health and availability
- monitor cost
- configure advanced logging
- configure logging for workloads
- initiate automated responses by using Action Groups
- configure and manage advanced alerts
- Create, view, and manage log alerts Using Azure Monitor - Azure Monitor | Microsoft Docs
- Manage alert instances in Azure Monitor - Azure Monitor | Microsoft Docs
- Create diagnostic settings to send platform logs and metrics to different destinations - Azure Monitor | Microsoft Docs
- Overview of alerting and notification monitoring in Azure - Azure Monitor | Microsoft Docs
- Create a Log Analytics workspace in the Azure portal - Azure Monitor | Microsoft Docs
Implement storage accounts
- select storage account options based on a use case
- configure Azure Files and blob storage
- configure network access to the storage account
- implement Shared Access Signatures and access policies
- implement Azure AD authentication for storage
- manage access keys
- implement Azure storage replication
- implement Azure storage account failover
Implement VMs for Windows and Linux
- configure High Availability
- configure storage for VMs
- select virtual machine size
- implement Azure Dedicated Hosts
- deploy and configure scale sets
- configure Azure Disk Encryption
Automate deployment and configuration of resources
- save a deployment as an Azure Resource Manager template
- modify Azure Resource Manager template
- evaluate location of new resources
- configure a virtual disk template
- deploy from a template
- manage a template library
- create and execute an automation runbook
Implement virtual networking
- implement VNet to VNet connections
- implement VNet peering
Implement Azure Active Directory
- add custom domains
- configure Azure AD Identity Protection
- implement self-service password reset
- implement Conditional Access including MFA
- configure user accounts for MFA
- configure fraud alerts
- configure bypass options
- configure Trusted IPs
- configure verification methods
- implement and manage guest accounts
- manage multiple directories
Implement and manage hybrid identities
- install and configure Azure AD Connect
- identity synchronization options
- configure and manage password sync and password writeback
- Implement password hash synchronization with Azure AD Connect sync | Microsoft Docs
- Enable Azure Active Directory password writeback | Microsoft Docs
- Azure AD Connect: Enabling device writeback | Microsoft Docs
- On-premises password writeback with self-service password reset - Azure Active Directory | Microsoft Docs
- configure single sign-on
- use Azure AD Connect Health
Implement Management and Security Solutions
Manage workloads in Azure
- migrate workloads using Azure Migrate
- About Azure Migrate - Azure Migrate | Microsoft Docs
- Discover servers running in a VMware environment with Azure Migrate Discovery and assessment - Azure Migrate | Microsoft Docs
- Assess VMware servers for migration to Azure VMs in Azure Migrate - Azure Migrate | Microsoft Docs
- Select a VMware migration option with Azure Migrate Server Migration - Azure Migrate | Microsoft Docs
- Migrate VMware VMs agentless Azure Migrate Server Migration - Azure Migrate | Microsoft Docs
- Migrate VMware VMs with agent-based Azure Migrate Server Migration - Azure Migrate | Microsoft Docs
- implement Azure Backup for VMs
- implement disaster recovery
- implement Azure Update Management
- Azure Automation Update Management overview | Microsoft Docs
- Enable Update Management using Azure Resource Manager template | Microsoft Docs
- Integrate Azure Automation Update Management with Microsoft Endpoint Configuration Manager | Microsoft Docs
- Manage updates and patches for your VMs in Azure Automation | Microsoft Docs
Implement load balancing and network security
- implement Azure Load Balancer
- implement an application gateway
- implement a Web Application Firewall
- implement Azure Firewall
- implement Azure Firewall Manager
- implement the Azure Front Door Service
- implement Azure Traffic Manager
- implement Network Security Groups and Application Security Groups
- implement Bastion
Implement and manage Azure governance solutions
- create and manage hierarchical structure that contains management groups, subscriptions and resource groups
- Azure Resource Manager overview - Azure Resource Manager | Microsoft Docs
- Organize your resources with management groups - Azure Governance - Azure governance | Microsoft Docs
- Quickstart: Create a management group with portal - Azure governance | Microsoft Docs
- Manage resource groups - Azure portal - Azure Resource Manager | Microsoft Docs
- Azure subscription limits and quotas - Azure Resource Manager | Microsoft Docs
- assign RBAC roles
- create a custom RBAC role
- configure access to Azure resources by assigning roles
- configure management access to Azure
- interpret effective permissions
- set up and perform an access review
- implement and configure an Azure Policy
- implement and configure an Azure Blueprint
Manage security for applications
- implement and configure KeyVault
- implement and configure Managed Identities
- register and manage applications in Azure AD
Implement Solutions for Apps
Implement an application infrastructure
- create and configure Azure App Service
- Overview - Azure App Service | Microsoft Docs
- Introduction - Azure App Service Environment | Microsoft Docs
- Custom configuration and application settings in Azure Web Sites - with Stefan Schackow
- Configure apps in the portal - Azure App Service | Microsoft Docs
- Buy a custom domain name - Azure App Service | Microsoft Docs
- Quickstart: Deploy an ASP.NET web app - Azure App Service | Microsoft Docs
- create an App Service Web App for Containers
- create and configure an App Service plan
- configure an App Service
- configure networking for an App Service
- create and manage deployment slots
- implement Logic Apps
- Overview for Azure Logic Apps - Azure Logic Apps | Microsoft Docs
- Quickstart - Create integration workflows with Azure Logic Apps in the Azure portal - Azure Logic Apps | Microsoft Docs
- Quickstart - Create integration workflows with multi-tenant Azure Logic Apps in Visual Studio - Azure Logic Apps | Microsoft Docs
- Quickstart - Create integration workflows with Azure Logic Apps in Visual Studio Code - Azure Logic Apps | Microsoft Docs
- implement Azure Functions
- Azure Functions Overview | Microsoft Docs
- Triggers and bindings in Azure Functions | Microsoft Docs
- Azure Functions trigger and binding example | Microsoft Docs
- Triggers and bindings in Azure Functions | Microsoft Docs
- Azure Functions HTTP triggers and bindings | Microsoft Docs
- Durable Functions Overview - Azure | Microsoft Docs
Implement container-based applications
- create a container image
- configure Azure Kubernetes Service
- publish and automate image deployment to the Azure Container Registry
- publish a solution on an Azure Container Instance
- Serverless containers in Azure - Azure Container Instances | Microsoft Docs
- Quickstart - Deploy Docker container to container instance - Portal - Azure Container Instances | Microsoft Docs
- Quickstart - Deploy Docker container to container instance - Azure CLI - Azure Container Instances | Microsoft Docs
Implement and Manage Data Platforms
Implement NoSQL databases
- configure storage account tables
- select appropriate CosmosDB APIs
- set up replicas in CosmosDB
Implement Azure SQL databases
- configure Azure SQL database settings
- implement Azure SQL Database managed instances
- configure HA for an Azure SQL database
- publish an Azure SQL database
Exam AZ-304: Microsoft Azure Architect Design
Design Monitoring
Design for cost optimization
- recommend a solution for cost management and cost reporting
- recommend solutions to minimize costs
Design a solution for logging and monitoring
- determine levels and storage locations for logs
- Azure Monitor Logs - Azure Monitor | Microsoft Docs
- Diagnostic logs - Azure Content Delivery Network | Microsoft Docs
- Enable diagnostics logging - Azure App Service | Microsoft Docs
- Create diagnostic settings to send platform logs and metrics to different destinations - Azure Monitor | Microsoft Docs
- plan for integration with monitoring tools including Azure Monitor and Azure Sentinel
- recommend appropriate monitoring tool(s) for a solution
- choose a mechanism for event routing and escalation
- recommend a logging solution for compliance requirements
Design Identity and Security
Design authentication
- recommend a solution for single-sign on
- Azure AD Connect: Seamless Single Sign-On | Microsoft Docs
- What is Azure single sign-on (SSO)? | Microsoft Docs
- Configure SaaS apps for B2B collaboration - Azure AD | Microsoft Docs
- Azure AD Connect: Seamless Single Sign-On - quickstart | Microsoft Docs
- Azure AD Connect: Seamless Single Sign-On - Frequently asked questions | Microsoft Docs
- recommend a solution for authentication
- recommend a solution for Conditional Access, including multi-factor authentication
- recommend a solution for network access authentication
- recommend a solution for a hybrid identity including Azure AD Connect and Azure AD Connect Health
- recommend a solution for user self-service
- recommend and implement a solution for B2B integration
Design authorization
- choose an authorization approach
- recommend a hierarchical structure that includes management groups, subscriptions and resource groups
- Azure Resource Manager overview - Azure Resource Manager | Microsoft Docs
- Manage resource groups - Azure portal - Azure Resource Manager | Microsoft Docs
- Azure Management Overview - Azure Governance | Microsoft Docs
- Organize your resources with management groups - Azure Governance - Azure governance | Microsoft Docs
- Quickstart: Create a management group with portal - Azure governance | Microsoft Docs
- Azure subscription limits and quotas - Azure Resource Manager | Microsoft Docs
- recommend an access management solution including RBAC policies, access reviews, role assignments, Privileged Identity Management (PIM), Azure AD Identity Protection, Just In Time (JIT) access
- What is Azure role-based access control (Azure RBAC)? | Microsoft Docs
- Assign Azure roles using the Azure portal - Azure RBAC | Microsoft Docs
- Quickstart - Check access for a user to Azure resources - Azure RBAC | Microsoft Docs
- What is Azure Active Directory Identity Protection? | Microsoft Docs
- What is Privileged Identity Management? - Azure AD | Microsoft Docs
- Just-in-time virtual machine access in Azure Security Center | Microsoft Docs
- What are access reviews? - Azure Active Directory | Microsoft Docs
Design governance
- recommend a strategy for tagging
- recommend a solution for using Azure Policy
- recommend a solution for using Azure Blueprint
- recommend a solution that leverages Azure Resource Graph
Design security for applications
- recommend a solution that includes KeyVault
- recommend a solution that includes Managed Identities
- recommend a solution for integrating applications into Azure AD
Design Data Storage
Design a solution for databases
- select an appropriate data platform based on requirements
- recommend database service tier sizing
- recommend a solution for database scalability
- recommend a solution for encrypting data at rest, data in transmission, and data in use
Design data integration
- recommend a data flow to meet business requirements
- recommend a solution for data integration, including Azure Data Factory, Azure Data Bricks, Azure Data Lake, Azure Synapse Analytics
- Introduction to Azure Data Factory - Azure Data Factory | Microsoft Docs
- What is Azure Databricks? | Microsoft Docs
- What is Azure Data Lake Storage Gen1? | Microsoft Docs
- Azure Data Lake Storage Gen2 Introduction | Microsoft Docs
- What is dedicated SQL pool (formerly SQL DW)? - Azure Synapse Analytics | Microsoft Docs
Select an appropriate storage account
- choose between storage tiers
- recommend a storage access solution
- recommend storage management tools
Design Business Continuity
Design a solution for backup and recovery
- recommend a recovery solution for Azure hybrid and on-premises workloads that meets recovery objectives (RTO, RLO, RPO)
- What is Azure Backup? - Azure Backup | Microsoft Docs
- Architecture Overview - Azure Backup | Microsoft Docs
- MABS (Azure Backup Server) V3 UR1 protection matrix - Azure Backup | Microsoft Docs
- About Azure Site Recovery - Azure Site Recovery | Microsoft Docs
- General questions about the Azure Site Recovery service | Microsoft Docs
- Common questions about VMware disaster recovery with Azure Site Recovery - Azure Site Recovery | Microsoft Docs
- Common questions for Hyper-V disaster recovery with Azure Site Recovery - Azure Site Recovery | Microsoft Docs
- design and Azure Site Recovery solution
- recommend a solution for recovery in different regions
- recommend a solution for geo-redundancy of workloads
- recommend a solution for Azure Backup management
- design a solution for data archiving and retention
Design for high availability
- recommend a solution for application and workload redundancy, including compute, database, and storage
- Regions and Availability Zones in Azure | Microsoft Docs
- Deploy VMs in an availability set using Azure PowerShell - Azure Virtual Machines | Microsoft Docs
- Data redundancy - Azure Storage | Microsoft Docs
- High availability - Azure SQL Database and SQL Managed Instance | Microsoft Docs
- Cloud business continuity - database recovery - Azure SQL Database & SQL Managed Instance | Microsoft Docs
- recommend a solution for autoscaling
- Autoscale in Microsoft Azure - Azure Monitor | Microsoft Docs
- Autoscaling guidance - Best practices for cloud applications | Microsoft Docs
- Azure virtual machine scale sets overview - Azure Virtual Machine Scale Sets | Microsoft Docs
- Scale resources - Azure SQL Database | Microsoft Docs
- Scaling out - Azure SQL Database | Microsoft Docs
- identify resources that require high availability
- identify storage types for high availability
Design Infrastructure
Design a compute solution
- recommend a solution for compute provisioning
- determine appropriate compute technologies, including virtual machines, App Services, Service Fabric, Azure Functions, Windows Virtual Desktop, Batch, HPC and containers
- Choosing an Azure compute service - Azure Architecture Center | Microsoft Docs
- Overview - Azure App Service | Microsoft Docs
- Introduction to Azure Kubernetes Service - Azure Kubernetes Service | Microsoft Docs
- Azure Batch runs large parallel jobs in the cloud - Azure Batch | Microsoft Docs
- Serverless containers in Azure - Azure Container Instances | Microsoft Docs
- Overview of Azure Service Fabric - Azure Service Fabric | Microsoft Docs
- Overview of Windows VMs in Azure - Azure Virtual Machines | Microsoft Docs
- Overview of Linux VMs in Azure - Azure Virtual Machines | Microsoft Docs
- What is Windows Virtual Desktop? - Azure | Microsoft Docs
- recommend a solution for containers
- recommend a solution for automating compute management
Design a network solution
- recommend a network architecture (hub and spoke, Virtual WAN)
- recommend a solution for network addressing and name resolution
- Name resolution for resources in Azure virtual networks | Microsoft Docs
- Integrate Azure DNS with your Azure resources - Azure DNS | Microsoft Docs
- Tutorial: Host your domain and subdomain - Azure DNS | Microsoft Docs
- Quickstart - Create an Azure private DNS zone using the Azure portal | Microsoft Docs
- recommend a solution for network provisioning
- recommend a solution for network security including private Link, firewalls, gateways, network segmentation (perimeter networks/DMZs/NVAs)
- recommend a solution for network connectivity to the Internet, on-premises networks, and other Azure virtual networks
- recommend a solution for automating network management
- recommend a solution for load balancing and traffic routing
Design an application architecture
- recommend a microservices architecture including Event Grid, Event Hubs, Service Bus, Storage Queues, Logic Apps, Azure Functions, Service Fabric, AKS, Azure App Configuration and webhooks
- Microservices architecture style - Azure Application Architecture Guide | Microsoft Docs
- What is Azure Event Grid? - Azure Event Grid | Microsoft Docs
- Overview of features - Azure Event Hubs - Azure Event Hubs | Microsoft Docs
- Azure Service Bus messaging overview - Azure Service Bus | Microsoft Docs
- Introduction to Azure Queue Storage - Azure Storage | Microsoft Docs
- Overview for Azure Logic Apps - Azure Logic Apps | Microsoft Docs
- Azure Functions Overview | Microsoft Docs
- Start an Azure Automation runbook from a webhook | Microsoft Docs
- recommend an orchestration solution for deployment and maintenance of applications including ARM templates, Azure Automation, Azure Pipelines, Logic Apps, or Azure Functions
- recommend a solution for API integration
Design migrations
- assess and interpret on-premises servers, data, and applications for migration
- Azure Migration Center | Microsoft Azure
- About Azure Migrate - Azure Migrate | Microsoft Docs
- Discover servers running in a VMware environment with Azure Migrate Discovery and assessment - Azure Migrate | Microsoft Docs
- Assess VMware servers for migration to Azure VMs in Azure Migrate - Azure Migrate | Microsoft Docs
- Azure VM assessments in Azure Migrate - Azure Migrate | Microsoft Docs
- Assess SQL Server readiness to migrate to Azure SQL Database - Data Migration Assistant | Microsoft Docs
- recommend a solution for migrating applications and VMs
- recommend a solution for migration of databases
- determine migration scope, including redundant, related, trivial, and outdated data
- recommend a solution for migrating data (Storage Migration Service, Azure Data Box, Azure File Sync-based migration to hybrid file server)
Books and other reading material
Due to the rapid renewal and innovative nature of cloud and Microsoft, there is no book I would advise you. Mainly because these are quickly becoming outdated and the fact that there are much better alternatives. If you still like to use a book for studying, then these books are suitable for learning:
- the Exam Ref AZ-303 Microsoft Architect Technologies by Mike Pfeiffer, Derek Schauland, et al..
- the Exam Ref AZ-304 Microsoft Architect Design by Ashish Agrawal, Avinash Bhavsar et al..
Practice exams
Practice exams are useful for getting a feel for the exam questions and topics. My personal experience with practice exams is that they are often outdated, incomplete, or that the answers marked as correct in practice exams are actually incorrect. I advise everyone not to use practice exams to memorize questions and the corresponding answers, but mainly to use them to get a feel for the real exam. Below are some practice exams for the AZ-303 and AZ-304 exams:
- Microsoft Azure Architect Technologies (AZ-303) by Whizlabs.
- Microsoft Azure Architect Design (AZ-304) by Whizlabs.
- Microsoft AZ-303 Exam by ExamTopics.
- Microsoft AZ-304 Exam by ExamTopics.
Good luck!
Now that we have come to the end of this article, hopefully you have discovered enough learning materials to take the AZ-303 and AZ-304 exams with confidence. All I can do now is wish you the best of luck. Goodluck!