AZ-400: Microsoft Azure DevOps Solutions Certification Exam 4

The AZ-400 Microsoft Azure DevOps Solutions certification exam tests and validates a candidates expertise as a DevOps Professional around the use of Microsoft Azure technologies for designing and implementing DevOps practices. This exam is a part of the required exams needed to earn the larger Microsoft Certified: Azure DevOps Engineer Expert certification.



AZ-400 Exam Target Audience

The AZ-400 Microsoft Azure DevOps Solutions certification exam is geared towards DevOps Professionals (or Site Reliability Engineers / SREs) who combine people, process, and tools to continuously deliver value to meet users needs and business objectives. These candidates streamline delivery by optimizing practices, improve communication and collaboration, and create automation. They design and implement strategies for app code and infrastructure that allows for continuous integration, continuous testing, continuous delivery, and continuous monitoring and feedback.

Exam candidates are expected to be proficient with Agile practices, and must be familiar with both Azure Administration and Azure Development, and should be experts in one of these areas. They must be able to design and implement DevOps practices for version control, compliance, infrastructure as code (IaC), configuration management, build, release, and testing by using Microsoft Azure technologies.


AZ-400 Exam Objective Domains

Here’s a very high level list of the skills and objectives measured on the AZ-400 Microsoft Azure DevOps Solutions certification exam. The percentages for each objective area represents the number of questions on the exam for that particular exam objective.

Configure processes and communications (10—15%)

  • Configure activity traceability and flow of work
    • plan and implement a structure for the flow of work and feedback cycles
    • identify appropriate metrics related to flow of work, such as cycle times, time to recovery, and lead time
    • integrate pipelines with work item tracking tools, such as Azure DevOps and GitHub • implement traceability policies decided by development
    • integrate a repository with Azure Boards
  • Configure collaboration and communication
    • communicate actionable information by using custom dashboards in Azure DevOps • document a project by using tools, such as wikis and process diagrams
    • configure release documentation, including release notes and API documentation
    • automate creation of documentation from Git history
    • configure notifications by using webhooks 

Design and implement source control (15—20%)

  • Design and implement a source control strategy
    • design and implement an authentication strategy
    • design a strategy for managing large files, including Git LFS and git-fat
    • design a strategy for scaling and optimizing a Git repository, including Scalar and crossrepository sharing
    • implement workflow hooks
  • Plan and implement branching strategies for the source code
    • design a branch strategy, including trunk-based, feature branch, and release branch
    • design and implement a pull request workflow by using branch policies and branch protections
    • implement branch merging restrictions by using branch policies and branch protections
  • Configure and manage repositories
    • integrate GitHub repositories with Azure Pipelines, one of the services in Azure DevOps
    • configure permissions in the source control repository
    • configure tags to organize the source control repository
    • recover data by using Git commands • purge data from source control 

Design and implement build and release pipelines (40—45%)

  • Design and implement pipeline automation
    • integrate pipelines with external tools, including dependency scanning, security scanning, and code coverage
    • design and implement quality and release gates, including security and governance
    • design integration of automated tests into a pipeline
    • design and implement a comprehensive testing strategy
    • implement orchestration of tools, such as GitHub Actions and Azure Pipelines
  • Design and implement a package management strategy
    • design a package management implementation that uses Azure Artifacts, GitHub Packages, NuGet, and npm
    • design and implement package feeds, including upstream sources
    • design and implement a dependency versioning strategy for code assets and packages, including semantic versioning and date-based
    • design and implement a versioning strategy for pipeline artifacts
  • Design and implement pipelines
    • select a deployment automation solution, including GitHub Actions and Azure Pipelines
    • design and implement an agent infrastructure, including cost, tool selection, licenses, connectivity, and maintainability
    • develop and implement pipeline trigger rules
    • develop pipelines, including classic and YAML • design and implement a strategy for job execution order, including parallelism and multi-stage
    • develop complex pipeline scenarios, such as containerized agents and hybrid
    • configure and manage self-hosted agents, including virtual machine (VM) templates and containerization
    • create reusable pipeline elements, including YAML templates, task groups, variables, and variable groups
    • design and implement checks and approvals by using YAML environments
  • Design and implement deployments
    • design a deployment strategy, including blue/green, canary, ring, progressive exposure, feature flags, and A/B testing
    • design a pipeline to ensure reliable order of dependency deployments
    • plan for minimizing downtime during deployments by using VIP swap, load balancer, and rolling deployments
    • design a hotfix path plan for responding to high-priority code fixes
    • implement load balancing for deployment, including Azure Traffic Manager and the Web Apps feature of Azure App Service
    • implement feature flags by using Azure App Configuration Feature Manager
    • implement application deployment by using containers, binary, and scripts
  • Design and implement infrastructure as code (IaC)
    • recommend a configuration management technology for application infrastructure
    • implement a configuration management strategy for application infrastructure, including IaC
    • define an IaC strategy, including source control and automation of testing and deployment
    • design and implement desired state configuration for environments, including Azure Automation State Configuration, Azure Resource Manager, Bicep, and Azure Policy guest configuration
  • Maintain pipelines
    • monitor pipeline health, including failure rate, duration, and flaky tests
    • optimize pipelines for cost, time, performance, and reliability
    • analyze pipeline load to determine agent configuration and capacity
    • design and implement a retention strategy for pipeline artifacts and dependencies 

Develop a security and compliance plan (10—15%)

  • Design and implement a strategy for managing sensitive information in automation
    • implement and manage service connections
    • implement and manage personal access tokens
    • implement and manage secrets, keys, and certificates by using Azure Key Vault, GitHub secrets, and Azure Pipelines secrets
    • design and implement a strategy for managing sensitive files during deployment
    • design pipelines to prevent leakage of sensitive information
  • Automate security and compliance scanning
    • automate analysis of source code by using GitHub code scanning, GitHub secrets scanning, pipeline-based scans, and SonarQube
    • automate security scanning, including container scanning and OWASP ZAP
    • automate analysis of licensing, vulnerabilities, and versioning of open-source components by using WhiteSource and GitHub Dependency Scanning 

Implement an instrumentation strategy (10—15%)

  • Configure monitoring for a DevOps environment
    • configure and integrate monitoring by using Azure Monitor
    • configure and integrate with monitoring tools, such as Azure Monitor and Application Insights
    • manage access control to the monitoring platform
    • configure alerts for pipeline events
  • Analyze metrics
    • inspect distributed tracing by using Application Insights
    • inspect application performance indicators
    • inspect infrastructure performance indicators, including CPU, memory, disk, and network
    • identify and monitor metrics for business value
    • analyze usage metrics by using Application Insight
    • interrogate logs using basic Kusto Query Language (KQL) queries 

To view the most up-to-date list of these exam objectives, please reference the official AZ-400 exam page.


AZ-400 Exam Study Resources

The first resource that is really great at learning and referencing how to use Azure DevOps is the official documentation. However, if you are new to Azure DevOps that can be a bit difficult to use without a more guided approach. Many of the Microsoft certification exams do have official Exam Reference books published from Microsoft Press, however, the AZ-400 DevOps Engineer is not one of them.

Here are some FREE learning and study resources that you’ll find useful when preparing for this exam:

  • Azure DevOps Labs – This is a great collection of Azure DevOps lab guides that you can follow using your own subscription and account.
  • AZ-400 Microsoft Official Courseware Hands-on Labs – These are FREE hands-on labs maintained by Microsoft. These are the Official Microsoft Curriculum labs used in paid Microsoft training courses for this certification, and you can access these labs completely free as they are hosted on GitHub. 
  • Microsoft Learn DevOps Modules – Microsoft Learn has a few modules around the topics of Azure DevOps that you can use to study.
  • Continuous Delivery in Azure DevOps Microsoft Cloud Workshop – This MCW is a great learning resource that can be used to learn more about Azure DevOps. It includes a Whiteboard design session that you can use to run through designing a DevOps solution, and it includes a Hands-on Lab that you can use to get in there and work with Azure DevOps for yourself.

AZ-400 Exam Self-Assessment Study Aid

To help those studying for and earning Microsoft Azure certifications, we (Chris Pietschmann and Dan Patrick) have been putting together some easy to use, self-assessments.

Download the AZ-400 Microsoft Azure IoT Developer Exam Self-Assessment Tool

AZ-400: Microsoft Azure DevOps Solutions Certification Exam 5
Microsoft Exam AZ-400 Self Assessment Spreadsheet Screenshot

This exam self-assessment is built as Excel spreadsheets, and is made available as Free and Open Source via the Build5Nines/exam-assessments GitHub project. This tool will help you ensure you fully study each of the exam objectives on the AZ-220 Azure IoT Developer certification exam. It also offers you an estimated percentage level of overall confidence on each exam objective area and the overall exam too!


Microsoft Certified: Azure DevOps Engineer Expert

The AZ-400 Microsoft Azure DevOps Solutions certification exam is among the required exams necessary to earn the larger Microsoft Certified: Azure DevOps Engineer Expert certification. Prior to taking this exam, candidates will need to take a couple exams previously and have earned either the Microsoft Certified: Azure Administrator Associate or Microsoft Certified: Azure Developer Associate certification. As the prerequisites show, candidates can be either Azure Administrator or Azure Developer experts, then take the AZ-400 Microsoft Azure DevOps Solutions exam to prove their skills as a Microsoft Azure DevOps Expert!

AZ-400: Microsoft Azure DevOps Solutions Certification Exam 6

 

Microsoft MVP

Chris Pietschmann is a Microsoft MVP (Azure & IoT) and HashiCorp Ambassador (2021) with 20+ years of experience designing and building Cloud & Enterprise systems. He has worked with companies of all sizes from startups to Fortune 100. He is also a Microsoft Certified Azure Solutions Architect and developer, a Microsoft Certified Trainer (MCT), and Cloud Advocate. He has a passion for technology and sharing what he learns with others to help enable them to learn faster and be more productive.