Course Outline
AZ-400: Designing and Implementing Microsoft DevOps solutions
This is a 4 day, instructor-led course.
This course provides the knowledge and skills to design and implement DevOps processes and practices. Students will learn how to plan for DevOps, use source control, scale Git for an enterprise, consolidate artifacts, design a dependency management strategy, manage secrets, implement continuous integration, implement a container build strategy, design a release strategy, set up a release management workflow, implement a deployment pattern, and optimize feedback mechanisms.
Upon successful completion of this course, students will have the skills necessary to:
• Plan for the transformation with shared goals and timelines
• Select a project and identify project metrics and KPIs
• Create a team and agile organization structure
• Describe the benefits of using Source Control
• Migrate from TFVC to Git
• Scale Git for Enterprise DevOps
• Recommend artifact management tools and practices
• Abstract common packages to enable sharing and reuse
• Migrate and consolidate artifacts
• Migrate and integrate source control measure
• Manage application config and secrets
• Develop a project quality strategy
• Plan for secure development practices and compliance rules
• Implement and manage build infrastructure
• Explain why continuous integration matters
• Implement continuous integration using Azure DevOps
• Manage code quality including: technical debt, SonarCloud, and other tooling solutions
• Manage security policies with open source, OWASP, and WhiteSource Bolt
• Implement a container strategy including how containers are different from virtual machines and how microservices use containers
• Implement containers using Docker
• Inspect open source software packages for security and license compliance to align with corporate standards
• Configure build pipeline to access package security and license rating
• Configure secure access to package feeds
• 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
• Differentiate between a release and a deployment
• Define the components of a release pipeline
• Explain things to consider when designing your release strategy
• Classify a release versus a release process and outline how to control the quality of both
• Describe the principle of release gates and how to deal with release notes and documentation
• Explain deployment patterns, both in the traditional sense and in the modern sense
• Choose a release management tool
• Explain the terminology used in Azure DevOps and other Release Management Tooling
• Describe what a Build and Release task is, what it can do, and some available deployment tasks
• Classify an Agent, Agent Queue, and Agent Pool
• Explain why you sometimes need multiple release jobs in one release pipeline
• Differentiate between multi-agent and multi-configuration release job
• Use release variables and stage variables in your release pipeline
• Deploy to an environment securely using a service connection
• Embed testing in the pipeline
• List the different ways to inspect the health of your pipeline and release by using alerts, service hooks, and reports
• Create a release gate
• Describe deployment patterns
• Implement Blue Green Deployment
• Implement Canary Release
• Implement Progressive Exposure Deployment
• Configure crash report integration for client applications
• Develop monitoring and status dashboards
• Implement routing for client application crash report data
• Implement tools to track system usage, feature usage, and flow
• Integrate and configure ticketing systems with development team’s work management
• Implement a mobile DevOps strategy
• Apply infrastructure and configuration as code principles.
• Deploy and manage infrastructure using Microsoft automation technologies such as ARM templates, PowerShell, and Azure CLI
• Describe deployment models and services that are available with Azure
• Deploy and configure a Managed Kubernetes cluster
• Deploy and configure infrastructure using 3rd party tools and services with Azure, such as Chef, Puppet, Ansible, SaltStack, and Terraform
• Define an infrastructure and configuration strategy and appropriate toolset for a release pipeline and application infrastructure
• Implement compliance and security in your application infrastructure
• Design practices to measure end-user satisfaction
• Design processes to capture and analyze user feedback from external sources
• Design routing for client application crash report data
• Recommend monitoring tools and technologies
• Recommend system and feature usage tracking tools
• 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
Students in this course are interested in implementing DevOps processes or in passing the Microsoft Azure DevOps Solutions certification exam.
Fundamental knowledge about Azure, version control, Agile software development, and core software development principles. It would be helpful to have experience in an organization that delivers software.
Course Contents
Learning Path: Development for enterprise DevOps
This learning path examines the key Git features that organizations must plan for when designing their enterprise DevOps.
Introduction to DevOps
This module explores the key areas that organizations must apply to start their DevOps transformation Journey, change the team’s mindset, and define timelines and goals.
Lessons
• What is DevOps?
• Explore the DevOps journey
• Identify transformation teams
• Define organization structure for agile practices
• Explore shared goals and define timelines
• What is Azure DevOps?
• What is GitHub?
• Design a license management strategy
• What is source control?2 min
• Describe working with Git locally
• Introduction to Azure Repos
• Introduction to GitHub
Plan Agile with GitHub Projects and Azure Boards
This module introduces you to GitHub Projects, GitHub Project Boards and Azure Boards. It explores ways to link Azure Boards and GitHub, configure GitHub Projects and Project views, and manage work with GitHub Projects.
Lessons
• Introduction to GitHub Projects and Project boards
• Introduction to Azure Boards
• Configure projects and teams in Azure DevOps
• Link GitHub to Azure Boards
• Configure GitHub Projects
• Manage work with GitHub Project boards
• Customize Project views
• Collaborate using team discussions
• Design and implement a strategy for feedback cycles
• Design and implement source, bug, and quality traceability
• Agile Plan and Portfolio Management with Azure Boards
Design and implement branch strategies and workflows
This module explores Git branching types, concepts, and models for the continuous delivery process. It helps companies defining their branching strategy and organization.
Lessons
• Explore branch workflow types
• Explore feature branch workflow
• Explore Git branch model for continuous deliver
• Explore GitHub flow
• Explore fork workflo
• Implement branch merging restrictions
• Version Control with Git in Azure Repos
Collaborate with pull requests in Azure Repos
This module presents pull requests for collaboration and code reviews using Azure DevOps and GitHub mobile for pull request approvals. It helps understanding how pull requests works and how to configure them.
Lessons
• Collaborate with pull requests
• Exercise Azure Repos collaborating with pull requests
Explore Git hooks
This module describes Git hooks and their usage during the development process, implementation, and behavior.
Lessons
• Introduction to Git hooks
• Implement Git hooks
Plan foster inner source
This module explains how to use Git to foster inner sources across the organization, implement Fork and its workflows.
Lessons
• Explore foster inner source
• Implement the fork workflow
• Describe inner source with forks
Manage and configure repositories
This module explores how to work with large repositories, purge repository data and manage and automate release notes using GitHub.
Lessons
• Work with large repositories
• Explore monorepo versus multiple repos
• Implement a change log
• Implement Scalar and cross repo when cross repo sharing
• Recover specific data by using Git command
• Purge repository data
• Manage releases with GitHub Repos
• Automate release notes with GitHub
• Create API documentation
• Implement automation of Git history documentation
• Configure source control repository permissions using GitHub
• Configure GitHub tags to organize repositories
Identify technical debt
This module examines technical debt, complexity, quality metrics, and plans for effective code reviews and code quality validation.
Lessons
• Examine code quality
• Examine complexity and quality metrics
• Introduction to technical debt
• Measure and manage technical debt
• Introduction to GitHub Advanced Security
• Integrate other code quality tools
• Plan effective code reviews
Learning Path: Implement CI with Azure Pipelines and GitHub Actions
This learning path introduces the continuous integration concept using Azure Pipelines and GitHub Actions and provides instruction on configuring those services and building applications.
Explore Azure Pipelines
This module introduces Azure Pipelines concepts and explains key terms and components of the tool, helping you decide your pipeline strategy and responsibilities.
Lessons
• Explore the concept of pipelines in DevOps
• Describe Azure Pipelines
• Understand Azure Pipelines key terms
Manage Azure Pipeline agents and pools
This module explores the differences between Microsoft-hosted and self-hosted agents, details job types, and configures agent pools. Understand typical situations to use agent pools and how to manage their security.
Lessons
• Choose between Microsoft-hosted versus self-hosted agents
• Explore job types
• Introduction to agent pools
• Explore predefined agent pool
• Understand typical situations for agent pools
• Communicate with Azure Pipelines
• Communicate to deploy to target servers
• Examine other considerations
• Describe security of agent pools
• Configure agent pools and understand pipeline styles
Describe pipelines and concurrency
This module describes parallel jobs and how to estimate their usage. Also, it presents Azure Pipelines for open-source projects, explores Visual Designer and YAML pipelines.
Lessons
• Understand parallel jobs
• Estimate parallel jobs
• Describe Azure Pipelines and open-source projects
• Explore Azure Pipelines and Visual Designer
• Describe Azure Pipelines and YAML
• Enable Continuous Integration with Azure Pipelines
Design and implement a pipeline strategy
This module describes pipeline strategies, configuring them, implementing multi-agent builds, and what source controls Azure Pipelines supports.
Lessons
• Configure agent demands
• Explore multi-configuration and multi-agent
• Integrate GitHub repos and Azure Pipelines
• Design and implement a comprehensive testing strategy
• Implement code coverage and show in the pipeline
• Implement multi-job builds
• Explore source control types supported by Azure Pipelines
Integrate with Azure Pipelines
This module details Azure Pipelines anatomy and structure, templates, YAML resources, and how to use multiple repositories in your pipeline.
Lessons
• Describe the anatomy of a pipeline
• Understand the pipeline structure
• Detail templates
• Explore YAML resources
• Use multiple repositories in your pipeline
• Migrate a pipeline from classic to YAML in Azure Pipelines
Introduction to GitHub Actions
In this module, you learn what GitHub Actions, action flow, and its elements are. Understand what events are, explore jobs and runners, and how to read console output from actions.
Lessons
• What are actions?
• Explore Actions flow
• Understand Workflows
• Describe standard workflow syntax elements
• Explore Events
• Explore Jobs
• Explore Runners
• Examine release and test an action
Learn continuous integration with GitHub Actions
This module details continuous integration using GitHub Actions and describes environment variables, artifacts, best practices, and how to secure your pipeline using encrypted variables and secrets.
Lessons
• Describe continuous integration with actions
• Examine environment variables
• Share artifacts between jobs
• Examine Workflow badges
• Describe best practices for creating actions
• Mark releases with Git tags
• Create encrypted secrets
• Use secrets in a workflow
• Implement GitHub Actions for CI/CD
Design a container build strategy
This module helps you plan a container build strategy, explains containers and their structure, introduces Docker, microservices, Azure Container Registry, and related services.
Lessons
• Examine structure of containers
• Work with Docker containers
• Understand Dockerfile core concepts
• Examine multi-stage dockerfiles
• Examine considerations for multiple stage builds
• Explore Azure container-related services
• Deploy Docker containers to Azure App Service web apps
• Knowledge check5
Learning Path: Design and implement a release strategy
This learning path explains the concepts of continuous delivery and releases strategy considerations for setting up deployment stages and your delivery and deployment cadence, and lastly, setting up your release approvals.
Create a release pipeline
This module describes Azure Pipelines capabilities, build, and release tasks.
Lessons
• Describe Azure DevOps release pipeline capabilities
• Explore release pipelines
• Explore artifact sources
• Choose the appropriate artifact source
• Examine considerations for deployment to stages
• Explore build and release tasks
• Explore custom build and release tasks
• Explore release jobs
• Understand database deployment task
• Configure Pipelines as Code with YAML
Explore release recommendations
This module explores the critical release strategy recommendations that organizations must consider when designing automated deployments and explains how to define components of a release pipeline and artifact sources, create approves, and configure release gates.
Lessons
• Understand the delivery cadence and three types of triggers
• Explore release approvals
• Explore release gates
• Use release gates to protect quality
• Explore GitOps release strategy and recommendations
• Control Deployments using Release Gates
Provision and test environments
This module details target environment provisioning, service connections creation process, and test infrastructure setup. Learn how to configure functional test automation and run availability tests.
Lessons
• Provision and configure target environments
• Exercise – set up service connections
• Configure automated integration and functional test automation
• Understand Shift-left
• Set up and run availability tests
• Explore Azure Load Testing
• Set up and run functional tests
Manage and modularize tasks and templates
This module describes the creation of task and variable groups and using release variables and stage variables in your pipeline.
Lessons
• Examine task groups
• Explore variables in release pipelines
• Exercise – create and manage variable groups
Automate inspection of health
This module describes how to automate the inspection of health events, configure notifications in Azure DevOps and GitHub, set up service hooks to monitor pipelines, measure the quality of your release process, and detail release gates for quality purposes. You examine release management tools and details about them.
Lessons
• Automate inspection of health
• Explore events and notifications
• Explore service hooks
• Configure Azure DevOps notifications
• Configure GitHub notifications
• Explore how to measure quality of your release process
• Examine release notes and documentation
• Examine considerations for choosing release management tools
• Explore common release management tools
Learning Path: Implement a secure continuous deployment using Azure Pipelines
This learning path helps you understand automated release gates, secrets, and secret management in your pipeline. You learn how to implement alerting mechanisms, report on your quality, and get notified by using service hooks.
Introduction to deployment patterns
This module introduces deployment patterns and explains microservices architecture to help improve the deployment cycle and examine classical and modern deployment patterns.
Lessons
• Explore microservices architecture
• Examine classical deployment patterns
• Understand modern deployment patterns
Implement blue-green deployment and feature toggles
This module describes the blue-green deployment process and introduces feature toggle techniques to implement in the development process.
Lessons
• What is blue-green deployment?
• Explore deployment slots
• Introduction to feature toggles
• Describe feature toggle maintenance
Implement canary releases and dark launching
This module describes deployment strategies around canary releases and dark launching and examines traffic managers.
Lessons
• Explore canary releases
• Examine traffic manager
• Understand dark launching
Implement A/B testing and progressive exposure deployment
This module introduces A/B test and progressive exposure deployment concepts and explores CI/CD with deployment rings–ring-based deployment.
Lessons
• What is A/B testing?
• Explore CI-CD with deployment rings
Integrate with identity management systems
This module describes the integration with GitHub and single sign-on (SSO) for authentication, service principals, and managed service identities.
Lessons
• Integrate GitHub with single sign-on (SSO)
• Design and implement permissions and roles in GitHub
• Design and implement permissions and security groups in Azure DevOps
• Explore workload identities
• Implement managed identities
Manage application configuration data
This module explores ways to rethink application configuration data and the separation of concerns method. Explore Azure App Configuration, details Key-value pairs, App Configuration feature management, and integrate Azure Key Vault with Azure Pipelines.
Lessons
• Rethink application configuration data
• Explore separation of concerns
• Understand external configuration store patterns
• Implement Azure DevOps secure files
• Introduction to Azure App Configuration
• Examine Key-value pairs
• Examine App configuration feature management
• Integrate Azure Key Vault with Azure Pipelines
• Manage secrets, tokens and certificates
• Examine DevOps inner and outer loop
• Integrate Azure Key Vault with Azure DevOps
• Enable Dynamic Configuration and Feature Flags
Learning Path: Manage infrastructure as code using Azure and DSC
This learning path explores the “Infrastructure as Code” (IaC) concept and how to manage your operations environment the same way you do applications or other code for general release.
Explore infrastructure as code and configuration management
This module describes key concepts of infrastructure as code and environment deployment creation and configuration. Also, understand the imperative, declarative, and idempotent configuration and how it applies to your company.
Lessons
• Explore environment deployment
• Examine environment configuration
• Understand imperative versus declarative configuration
• Understand idempotent configuration
Create Azure resources using Azure Resource Manager templates
This module explores Azure Resource Manager templates and their components and details dependencies and modularized templates with secrets.
Lessons
• Why use Azure Resource Manager templates?
• Explore template components
• Manage dependencies
• Modularize templates
• Manage secrets in templates
Create Azure resources by using Azure CLI
This module explains Azure CLI to create Azure resources, run templates, and detail Azure CLI commands.
Lessons
• What is Azure CLI?
• Work with Azure CLI
Explore Azure Automation with DevOps
This module describes Azure Automation with Azure DevOps, using runbooks, webhooks, and PowerShell workflows. You learn how to create and manage automation for your environment.
Lessons
• Create automation accounts
• What is a runbook?
• Understand automation shared resources
• Explore runbook gallery
• Examine webhooks
• Explore source control integration
• Explore PowerShell workflows
• Create a workflow
• Explore hybrid management
• Examine checkpoint and parallel processing
Implement Desired State Configuration (DSC)
This module describes Desired State Configuration (DSC) and its components for implementation. You can exercise how to import, compile and automate your environment creation, and use DSC for Linux automation on Azure.
Lessons
• Understand configuration drift
• Explore Desired State Configuration (DSC)
• Explore Azure Automation State configuration (DSC)
• Examine DSC configuration file
• Implement DSC and Linux Automation on Azure
Implement Bicep
This module explains Bicep and how it integrates with different tools such as Azure CLI and Visual Studio Code for environment deployment configuration.
Lessons
• What is Bicep?
• Install Bicep
• Exercise – Create Bicep templates
• Understand Bicep file structure and syntax
• Exercise – Deploy a Bicep file from Azure Pipelines
• Exercise – Deploy a Bicep file from GitHub workflows
• Deployments using Azure Bicep templates
Price per delegate
£2995
Scheduled Classes
Remote Access:
12 – 15 Jan 2026
16 – 19 Mar 2026
26 – 29 May 2026
20 – 23 Jul 2026
Please complete the contact form below or call 0141 221 5676 for further course information and available dates.
Alternatively you can email us at info@indiciatraining.com
AZ400
