Course subjects
Module 1: Get started on a DevOps transformation journey
Lessons
Introduction to DevOps
Choose the right project
Describe team structures
Migrate to DevOps
Introduction to source control
Describe types of source control systems
Work with Azure Repos and GitHub
Lab : Agile planning and portfolio management with Azure Boards
Lab : Version controlling with Git in Azure Repos
Module 2: Work with Git for enterprise DevOps
Lessons
Lab : Version controlling with Git in Azure Repos
Module 3: Implement CI with Azure Pipelines and GitHub Actions
Lessons
Explore Azure Pipelines
Manage Azure Pipeline agents and pools
Describe pipelines and concurrency
Explore Continuous integration
Implement a pipeline strategy
Integrate with Azure Pipelines
Introduction to GitHub Actions
Learn continuous integration with GitHub Actions
Lab : Configuring agent pools and understanding pipeline styles
Module 4: Design and implement a release strategy
Lessons
Introduction to continuous delivery
Explore release strategy recommendations
Build a high-quality release pipeline
Introduction to deployment patterns
Implement blue-green deployment and feature toggles
Implement canary releases and dark launching
Implement A-B testing and progressive exposure deployment
Lab : Controlling deployments using Release Gates
Lab : Creating a release dashboard
Lab : Feature flag management with LaunchDarkly and Azure DevOps
Module 5: Implement a secure continuous deployment using Azure Pipelines
Lessons
Create a release pipeline
Configure and provision environments
Manage and modularize tasks and templates
Automate inspection of health
Manage application configuration data
Integrate with identity management systems
Implement application configuration
Lab : Integrating Azure Key Vault with Azure DevOps
Lab : Setting up and running functional tests
Lab : Configuring pipelines as code with YAML
Module 6: Manage infrastructure as code using Azure, DSC, and third-party tools
Lessons
Explore infrastructure as code and configuration management
Create Azure resources using Azure Resource Manager templates
Create Azure resources by using Azure CLI
Explore Azure Automation with DevOps
Implement Desired State Configuration (DSC)
Introduction to Chef and Puppet
Implement Ansible
Implement Terraform
Lab : Deployments using Azure Resource Manager templates
Lab : Ansible with Azure
Lab : Automating infrastructure deployments in the cloud with Terraform and Azure Pipelines
Module 7: Implement security and validate code bases for compliance
Lessons
Introduction to Secure DevOps
Implement open-source software
Software Composition Analysis
Static analyzers
OWASP and Dynamic Analyzers
Security Monitoring and Governance
Lab : Managing technical debt with SonarQube and Azure DevOps
Lab : Implement security and compliance in Azure DevOps Pipelines
Module 8: Design and implement a dependency management strategy
Lessons
Explore package dependencies
Understand package management
Migrate, consolidating and secure artifacts
Implement a versioning strategy
Lab : Package management with Azure Artifacts
Module 9: Create and manage containers using Docker and Kubernetes
Lessons
Design a container build strategy
Implement Docker multi-stage builds
Implement Azure Kubernetes Service (AKS)
Explore Kubernetes tooling
Integrate AKS with Pipelines
Lab : Deploying Docker Containers to Azure App Service web apps
Lab : Deploying a multi-container application to Azure Kubernetes Services
Module 10: Implement continuous feedback
Lessons
Implement tools to track usage and flow
Implement route for mobile application crash report data
Develop monitor and status dashboards
Share knowledge within teams
Explore SRE and design practices to measure end-user satisfaction
Design processes to capture and analyze user feedback
Design processes to automate application analytics
Manage alerts, Blameless retrospectives and a just culture
Lab : Integration between Azure DevOps and Microsoft Teams
Lab : Monitoring application performance with Application Insights