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.
Successful learners will have prior knowledge and understanding of:
Prerequisite courses (or equivalent knowledge and hands-on experience):
Introduction to DevOps
Plan Agile with GitHub Projects and Azure Boards
Manage Git branches and workflows
Collaborate with pull requests in Azure Repos
Explore Git hooks
Plan foster inner source
Manage Git repositories
Identify technical debt
Explore Azure Pipelines
Manage Azure Pipeline agents and pools
Describe pipelines and concurrency
Implement a pipeline strategy
Integrate with Azure Pipelines
Introduction to GitHub Actions
Learn continuous integration with GitHub Actions
Design a container build strategy
Create a release pipeline
Explore release recommendations
Provision and test environments
Manage and modularize tasks and templates
Automate inspection of health
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
Integrate with identity management systems
Manage application configuration data
Explore infrastructure as code and configuration management
Create Azure resources using Azure Resource Manager templates
Implement Bicep
Create Azure resources by using Azure CLI
Explore Azure Automation with DevOps
Implement Desired State Configuration (DSC)
Introduction to Secure DevOps
Implement open-source software
Software Composition Analysis
Security Monitoring and Governance
Explore package dependencies
Understand package management
Migrate consolidating and secure artifacts
Implement a versioning strategy
Introduction to GitHub Packages
Implement tools to track usage and flow
Develop monitor and status dashboards
Share knowledge within teams
Design processes to automate application analytics
Manage alerts, blameless retrospectives and a just culture