AZ-400T00 Design and Implementing Microsoft DevOps Solutions
7/27/2020 - 7/31/2020COURSE LENGTH:
9:00am - 4:30pm
This instructor led 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.
AUDIENCE AND PREREQUISITES
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 cost listed does not include the cost of courseware. Course is subject to a minimum enrollment to run. Course may run virtually as a Virtual Instructor-Led (VILT) class if the minimum enrollment is not met. For more information, please contact firstname.lastname@example.org or call 207-775-0244
Module 1: Planning for DevOps Transformation Planning Project Selection Team Structures Migrating to Azure DevOps Lab : Agile Planning and Portfolio Management with Azure Boards After completing this module, students will be able to: Plan for the transformation with shared goals and timelines, Select a project and identify project metrics and KPIs Create a team and agile organizational structure Design a tool integration strategy, Design a license management strategy (e.g. VSTS users) Design a strategy for end-to-end traceability from work items to working software Design an authentication and access strategy Design a strategy for integrating on-premises and cloud resourcesModule 2: Getting started with Source Control What is Source Control Benefits of Source Control Types of Source Control Systems Introduction to Azure Repos, Introduction to GitHub Migrating from Team Foundation Version Control (TFVC) to Git in Azure Repos Authenticating to Git in Azure Repos Lab : Version Controlling with Git After completing this module, students will be able to: Describe the benefits of using Source Control Describe Azure Repos and GitHub Migrate from TFVC to GitModule 3: Scaling Git for enterprise DevOps How to Structure your Git Repo Git Branching Workflows Collaborating with Pull Requests in Azure Repos Why care about GitHooks Fostering Inner Source Lab : Code Review with Pull Requests After completing this module, students will be able to: Explain how to structure Git repos Describe Git branching workflows Leverage pull requests for collaboration and code reviews Leverage Git hooks for automation Use git to foster inner source across the organizationModule 4: Consolidating Artifacts & Designing a Dependency Management Strategy Packaging Dependencies Package Management Migrating and Consolidating Artifacts Lab : Updating Packages After completing this module, students will be able to: Recommend artifact management tools and practices Abstract common packages to enable sharing and reuse Migrate and consolidate artifacts Migrate and integrate source control measuresModule 5: Implementing Continuous Integration with Azure Pipelines The concept of pipelines in DevOps Azure Pipelines, Evaluate use of Hosted vs Private Agents Agent Pools, Pipelines and Concurrency Azure DevOps and Open Source Projects (Public Projects) Azure Pipelines YAML vs Visual Designer Continuous Integration Overview Implementing a Build Strategy, Integration with Azure Pipelines Integrate External Source Control with Azure Pipelines Set Up Private Agents, Analyze and Integrate Docker Multi-Stage Builds Lab : Enabling Continuous Integration with Azure Pipelines Lab : Integrating External Source Control with Azure Pipelines, Lab : Integrate Jenkins with Azure Pipelines Lab : Deploying a Multi-Container ApplicationModule 6: Managing Application Config and Secrets Introduction to Security, Implement secure and compliant development process Rethinking application config data, Manage secrets, tokens, and certificates Implement tools for managing security and compliance in a pipeline Lab : Integrating Azure Key Vault with Azure DevOps After completing this module, students will be able to: Manage application config and secretsModule 7: Managing Code Quality and Security Policies Managing Code Quality, Managing Security Policies Lab : Managing Technical Debt with Azure DevOps and SonarCloud After completing this module, students will be able to: Manage code quality including: technical debt SonarCloud, and other tooling solutions Manage security policies with open source and OWASPModule 8: Implementing a Container Build Strategy Implementing a Container Build Strategy Lab : Modernizing Existing ASP.NET Apps with Azure After completing this module, students will be able to Implement a container strategy including how containers are different from virtual machines and how microservices use containers Implement containers using DockerModule 9: Manage Artifact versioning, security & compliance Package security, Open source software Integrating license and vulnerability scans Implement a versioning strategy (git version) Lab : Manage Open Source Security and License with WhiteSource 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 complianceModule 10: Design a Release Strategy Introduction to Continuous Delivery Release strategy recommendations Building a High-Quality Release pipeline Choosing a deployment pattern, Choosing the right release management tool 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 toolModule 11: Set up a Release Management Workflow Create a Release Pipeline, Provision and Configure Environments Manage and Modularize Tasks and Templates Integrate Secrets with the release pipeline Configure Automated Integration and Functional Test Automation Automate Inspection of Health Lab : Configuring Pipelines as Code with YAML Lab : Setting up secrets in the pipeline with Azure Key vault Lab : Setting up and Running Functional Tests Lab : Using Azure Monitor as release gate Lab : Creating a release DashboardModule 12: Implement an appropriate deployment pattern Introduction to Deployment Patterns, Implement Blue Green Deployment Feature Toggles, Canary Releases Dark Launching, AB Testing Progressive Exposure Deployment Lab : Feature Flag Management with LaunchDarkly and Azure DevOps Describe deployment patterns Implement Blue Green Deployment Implement Canary Release Implement Progressive Exposure DeploymentModule 13: Implement process for routing system feedback to development teams Implement Tools to Track System Usage, Feature Usage, and Flow Implement Routing for Mobile Application Crash Report Data Develop Monitoring and Status Dashboards Integrate and Configure Ticketing Systems Lab : Monitoring Application Performance 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 managementModule 14: Implement a mobile DevOps strategy Introduction to Mobile DevOps Introduction to Visual Studio App Center Manage mobile target device sets and distribution groups Manage target UI test device sets Provision tester devices for deployment Create public and private distribution groups After completing this module, students will be able to: Implement a mobile DevOps strategyModule 15: Infrastructure and Configuration Azure Tools Infrastructure as Code and Configuration Management Create Azure Resources using ARM Templates Create Azure Resources using Azure CLI Create Azure Resources by using Azure PowerShell Desired State Configuration (DSC) Azure Automation with DevOps Additional Automation Tools Lab : Azure Deployments using Resource Manager TemplatesModule 16: Azure Deployment Models and Services Deployment Modules and Options Azure Infrastructure-as-a-Service (IaaS) Services Azure Platform-as-a-Service (PaaS) services Serverless and HPC Computer Services Azure Service Fabric Lab : Azure Automation - IaaS or PaaS deploymentModule 17: Create and Manage Kubernetes Service Infrastructure Azure Kubernetes Service Lab : Deploying a multi-container application to Azure Kubernetes ServiceModule 18: Third Party Infrastructure as Code Tools available with Azure Chef, Puppet, Ansible, Terraform Lab : Infrastructure as Code Lab : Automating Your Infrastructure Deployments in the Cloud with Terraform and Azure PipelinesModule 19: Implement Compliance and Security in your Infrastructure Security and Compliance Principles with DevOps Azure security Center Lab : Implement Security and Compliance in an Azure DevOps PipelineModule 20: Recommend and design system feedback mechanisms The inner loop, Continuous Experimentation mindset Design practices to measure end-user satisfaction Design processes to capture and analyze user feedback Design process to automate application analytics Lab : Integration between Azure DevOps and TeamsModule 21: Optimize feedback mechanisms Site Reliability Engineering Analyze telemetry to establish a baseline Perform ongoing tuning to reduce meaningless or non-actionable alerts Analyze alerts to establish a baseline Blameless Retrospectives and a Just Culture