How to Pass the AZ-400 Microsoft Azure DevOps Solutions (beta) Exam

This article outlines the syllabus of the AZ-400 “Microsoft Azure DevOps Solutions (beta)” Exam to help you prepare for this exam.  This beta exam was released on October 26, 2018.

Note: We intend to continually update this article to add more links to relevant documentation for each study topics.  If you have links to any of the study topics listed, please add the links in the comment field below.

Candidates for this exam are DevOps professionals who combine people, process, and technologies to continuously deliver valuable products and services that meet end user needs and business objectives.

DevOps professionals streamline delivery by optimizing practices, improving communications and collaboration, and creating automation. They design and implement strategies for application code and infrastructure that allow for continuous integration, continuous testing, continuous delivery, and continuous monitoring and feedback.

Candidates must be proficient with Agile practices. They must be familiar with both Azure administration and Azure development and experts in at least one of these areas. Azure DevOps professionals must be able to design and implement DevOps practices for version control, compliance, infrastructure as code, configuration management, build, release, and testing by using Azure technologies.

Skills measured on the AZ-400 exam

Design a DevOps Strategy (20-25%)

Recommend a Migration and Consolidation Strategy for DevOps Tools

Design and implement an Agile Work Management Approach

  • Identify and recommend Project Metrics, KPIs, and DevOps measurements:
    • Cycle time
    • Lead time
    • Azure Kubernetes Service
    • WIP limit
  • Implement tools and processes to support Agile work management
  • Mentor team members on Agile techniques and practices
  • Recommend an organization structure that supports scaling Agile practices
  • Recommend in-team and cross-team collaboration mechanisms

Design a Quality Strategy

  • Analyze existing Quality Environment
  • Identify and recommend Quality Metrics
  • Recommend a strategy for Feature Flag Life-cycle
  • Recommend a strategy for measuring and managing Technical Debt
  • Recommend changes to Team Structure to Optimize Quality
  • Recommend performance Testing Strategy

Design a Secure Development Process

  • Inspect and validate Code Base for compliance
  • Inspect and validate infrastructure for compliance
  • Recommend a Secure Development Strategy
  • Recommend tools and practices to integrate code security validation:
    • Static Code Analysis
  • Recommend tools and practices to integrate Infrastructure Security Validation

Design a Tool Integration Strategy

  • Design a License Management Strategy:
  • Design a strategy for end-to-end trace-ability from Work Items to working software
  • Design a strategy for integrating Monitoring and Feedback to Development Teams
  • Design an Authentication and Access strategy
  • Design a strategy for integrating On-premises and Cloud resources

Implement DevOps Development Processes (20-25%)

Design a Version Control Strategy

Implement and integrate Source Control

  • Integrate external source control
  • Integrate source control into 3rd party Continuous Integration and Continuous Deployment (CI/CD) systems

Implement and manage Build Infrastructure

Implement Code Flow

Implement a Mobile DevOps strategy

Managing Application Configuration and Secrets

  • Implement a secure and compliant development process
  • Implement general (non-secret) configuration data
  • Manage secrets, tokens, and certificates
  • Implement Applications Configurations:
    • Web App
    • Azure Kubernetes Service
    • containers
  • Implement Secrets Management:
  • Implement tools for managing Security and Compliance in the pipeline

Implement Continuous Integration (10-15%)

Manage Code Quality and Security Policies

  • Monitor Code Quality
  • Configure build to report on Code Coverage
  • Manage automated Test Quality
  • Manage Test Suites and Categories
  • Monitor Quality of Tests
  • Integrate Security Analysis Tools:

Implement a Container Build Strategy

  • Create Deployable Images:
    • Docker
    • Azure Container Registry
  • Analyze and integrate Docker multi-stage builds

Implement a Build Strategy

  • Design:
  • Implement a Hybrid build process
  • Implement Multi-agent builds
  • Recommend Build tools and configuration
  • Set up an Automated Build workflow

Implement Continuous Delivery (10-15%)

Design a Release Strategy

  • Recommend Release tools
  • Identify and recommend Release Approvals and Release Gates
  • Recommend strategy for measuring Quality of Release and Release Process
  • Recommend strategy for Release Notes and Documentation
  • Select appropriate Deployment Pattern

Set up a Release Management Workflow

Implement an appropriate deployment pattern

Implement Dependency Management (5-10%)

Design a Dependency Management Strategy

  • Recommend Artifact Management Tools and Practices
  • Abstract Common Packages to enable sharing and reuse
  • Inspect Codebase to identify Code Dependencies that can be converted to Packages
  • Identify and recommend Standardized Package Types and Versions across the Solution
  • Refactor existing build pipelines to implement version strategy that publishes packages

Manage security and compliance

Implement Application Infrastructure (15-20%)

Design an Infrastructure and Configuration Management Strategy

Implement Infrastructure as Code (IaC)

Manage Azure Kubernetes Service infrastructure

Implement Infrastructure Compliance and Security

Implement Continuous Feedback (10-15%)

Recommend and design System Feedback Mechanisms

  • Design practices to measure End-User Satisfaction:
  • Design processes to Capture and Analyze User Feedback from External Sources:
    • Twitter
    • Reddit
    • Help Desk
  • Design Routing for client application Crash Report Data:
    • HockeyApp
  • Recommend Monitoring Tools and Technologies
  • Recommend System and Feature Usage Tracking Tools

Implement process for Routing System Feedback to Development Teams

  • Configure Crash Report Integration for Client Applications
  • Develop Monitoring and Status Dashboards
  • Implement Routing for Client Application Crash Report Data:
    • HockeyApp
  • Implement tools to track:
    • System Usage
    • Feature Usage
    • Flow
  • Integrate and configure Ticketing Systems with Development Team’s Work management system:
    • IT Service Management connector
    • ServiceNow Cloud Management
    • App Insights work items

Optimize Feedback Mechanisms

  • Analyze Alerts to establish a Baseline
  • Analyze Telemetry to establish a Baseline
  • Perform Live Site Reviews and Capture Feedback for System Outages
  • Perform Ongoing Tuning to Reduce Meaningless or Non-Actionable Alerts

Relevant Videos

The following video is a live training workshop from Azure DevOps Launch (Sept 2018).

The following video shows how to use Git with Pull Requests (PR) and use branches to manage your releases.  It also compares GitHub flow with the “Release Flow” practiced at Microsoft.

Share code and collaborate using Git and Pull Requests (PR)

Real World Mobile DevOps with Azure DevOps (formerly VSTS) and App Center

Azure Artifacts helps you manage the software components you use by providing an intuitive UI, as well as helpful tools to ensure immutability and performance for the components you create or consume. In this video, we will show you some initial steps to help you get started, by creating a feed for an npm package to use in your Azure Pipeline.

Progressive experimentation with Feature Flags – how we use feature flags to progressively reveal new functionality and to experiment in production.  A key advantage of the cloud service is that it provides a continuous feedback loop with our users.

The following video shows how to deploy safely to production on Windows or Linux with no impact on end-user performance with Azure App Service.  Leverage Azure DevOps (formerly VSTS) integration and deployment slots to create a deployment pipeline and use Azure App Insights to monitor your app’s behavior in production.

Other Relevant Links

Advertisements

Leave a Comment

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s