How to Prepare for AZ-400: Designing and Implementing Microsoft DevOps Solutions — 2023

Adil Shehzad
8 min readJan 1, 2023

--

The Azure DevOps Engineer Expert certification is designed to validate a candidate’s skills in using Azure DevOps to design and implement DevOps practices for version control, compliance, infrastructure as code, configuration management, build, release, and testing.

After completing the AZ-400 exam, you should be able to:

  • Design a version control strategy
  • Implement and manage version control
  • Manage code quality and security policies
  • Implement a build infrastructure
  • Design a release strategy
  • Set up a release management workflow
  • Implement infrastructure as a coding strategy
  • Manage infrastructure and configuration drift
  • Implement compliance and security in your infrastructure as code
  • Manage security and compliance in the pipeline
  • Implement continuous integration in an Azure DevOps pipeline
  • Implement continuous delivery in an Azure DevOps pipeline
  • Design a reliable release process
  • Implement disaster recovery and high availability

Exam Outline 📘

The English language version of this exam was updated on November 1, 2022.

The Exam contains both lab and MCQ questions. In case there is no lab, you have to provide 20 minutes less than the actual exam time. This Exam will measure your skills on the following topics

  • Configure processes and communications (10–15%)
  • Design and implement source control (15–20%)
  • Design and implement build and release pipelines (40–45%)
  • Develop a security and compliance plan (10–15%)
  • Implement an instrumentation strategy (10–15%)

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 the 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 the 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 the 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 plan for scaling and optimizing a Git repository, including Scalar and cross-repository sharing
  • Implement workflow hooks

Plan and implement branching strategies for the source code

  • Design a branching 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 the 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 Exam AZ-400: Designing and Implementing Microsoft DevOps Solutions 5
  • 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 the 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 the analysis of licensing, vulnerabilities, and versioning of open-source components by using WhiteSource Bolt 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

Study Resources

Making Personal Notes 📓

Taking notes is something necessary when studying. My Suggestion is to use Notion, which can help you to create perfect notes, as after passing the exam you can share those notes in your network, also notes can help you to learn faster.

Checkout my latest Microsoft Az-400 Notes on GitHub

Feel Free to open a pull request, for opensource contributions

Online Courses

If you’re planning to take the AZ-400 exam and are looking for a comprehensive study resource, I highly recommend Alan’s course on Udemy. This course covers all of the key concepts and skills that you need to know to pass the exam, including Azure DevOps, Azure resource management, and continuous delivery.

Alan does an excellent job of breaking down complex topics into easy-to-understand concepts, and his lectures are engaging and interactive. The course also includes a wealth of practical examples and hands-on exercises that will help you reinforce your learning and build your skills.

Overall, I believe that Alan’s course is an excellent investment for anyone looking to pass the AZ-400 exam and become a Microsoft Certified: Azure DevOps Engineer Expert. Whether you’re new to Azure or have some experience under your belt, this course will provide you with the knowledge and confidence you need to succeed.

👉🏻 https://www.udemy.com/course/azure100/

Practice Exams 📝

If you’re preparing for the AZ-400 exam, I highly recommend checking out the practice exams offered by WizLabs. These exams are designed to closely mimic the format and content of the real AZ-400 exam, and they are an excellent way to test your knowledge and identify any areas that may need additional study. The questions are challenging and cover a wide range of topics, so you can be sure that you’re getting a comprehensive and realistic test experience. Overall, I believe that WizLabs practice exams are an invaluable resource for anyone looking to pass the AZ-400 exam and become a Microsoft Certified: Azure DevOps Engineer Expert.

👉🏻 https://www.whizlabs.com/microsoft-azure-certification-az-400/

Labs

Labs are an essential part of preparing for exams, as they allow you to practice and apply your knowledge in a hands-on way. The best source for labs is azuredevopslabs.com, which offers a wide range of high-quality labs covering a variety of topics. These labs provide a realistic and interactive learning experience, helping you to confidently and effectively prepare for your exams. So if you want to ensure that you are well-prepared and ready to succeed on your exams, be sure to take advantage of the valuable resources offered by azuredevopslabs.com

👉🏻 https://microsoftlearning.github.io/AZ400-DesigningandImplementingMicrosoftDevOpsSolutions/

Free Learning Path by Microsoft

Are you preparing for the Azure DevOps Engineer Expert certification exam (AZ-400)? If so, you’ll be happy to know that Microsoft has a free, updated learning path available to help you study and prepare. This learning path, which can be accessed at https://learn.microsoft.com/en-us/certifications/devops-engineer/, provides a comprehensive overview of the knowledge and skills tested on the AZ-400 exam. It includes a range of resources such as videos, articles, and hands-on labs, all of which are designed to help you build the skills you need to succeed on the exam. The learning path is regularly updated to ensure that it reflects the most current version of the AZ-400 exam, so you can be confident that you are studying with the most accurate and up-to-date materials. If you’re planning to take the AZ-400 exam, be sure to take advantage of this valuable resource to help you prepare.

Azure White Papers 📝

Azure White Papers are a great source for learning and getting an idea of which skills will be measured during the exam.

👉🏻 https://query.prod.cms.rt.microsoft.com/cms/api/am/binary/RE3VP8d

Some Tips 💁🏽

  • Divide and Conquer — break the learning material down into thematic chapters
  • Use digital notes — match the headings hierarchy with your breakdown of the training material
  • Treat the practice exams as training material — I cannot stress this enough. THIS IS KEY. Also, make sure you don’t memorize the answers, try to understand the explanations
  • Seek out additional resources. In addition to your primary study materials, consider looking for additional resources such as online courses, tutors, or study groups. These can provide valuable insights and help to reinforce your learning.
  • Check your Internet Speed and make sure, it will not interrupt your exam if you are doing it from home/office.
  • Please Don’t use DUMPS
  • Finally, make use of the ‘Mark for Review’ feature of the exam.

Conclusion 🎇

I hope this learning path has been helpful as you prepare for the AZ-400 exam. Remember to keep practicing and stay up to date with the latest exam content. Best of luck with your exam! If you have any questions or need additional support along the way, please feel free to reach out to me on LinkedIn. I’m always happy to help and support other professionals as they work towards their certification goals. Good luck with your exam, and I hope to connect with you soon!

--

--