This module introduces key DevOps concepts and teaches how to plan and structure an organization’s DevOps journey.
Lessons:
Identify business drivers, goals, and metrics for DevOps adoption.
Assess existing processes and culture to define transformation priorities.
Design cross-functional team structures and define responsibilities.
Select tools for project tracking, collaboration, and process integration (Azure Boards, GitHub Projects).
Develop communication plans and performance indicators for DevOps success.
DevOps adoption roadmap and governance.
Value stream mapping.
Change management and leadership buy-in.
Metrics and reporting dashboards.
Create a DevOps strategy plan in Azure Boards.
Establish traceability between user stories, commits, and releases.
Learn to manage source control effectively and establish collaboration practices for distributed teams.
Lessons:
Configure Git repositories in Azure Repos and GitHub.
Define branching and merging strategies (GitFlow, trunk-based, GitHub Flow).
Enforce branch policies and pull request approvals.
Manage technical debt and code quality through reviews and feedback.
Use Git hooks and automation scripts to streamline workflows.
Version control fundamentals.
Branching models and governance.
Code review and collaboration policies.
Traceability and integration with Azure Boards.
Configure Git repository, branches, and policies in Azure DevOps.
Set up a pull request workflow with reviewers and build validation.
Focus on automating build and testing processes for consistent integration.
Lessons:
Design and configure build pipelines using YAML and classic editors.
Manage build agents, pools, and parallelism.
Integrate automated unit and functional testing.
Implement build validation with GitHub Actions workflows.
Use pipeline variables, secrets, and reusable templates.
CI principles and best practices.
Azure Pipelines architecture.
Containerized builds using Docker.
CI with GitHub Actions.
Create a CI pipeline to build and test a .NET or Node.js application.
Implement code quality gates and automated test runs.
Develop robust release processes and deployment automation.
Lessons:
Design a release pipeline and deployment approval workflow.
Implement continuous delivery (CD) using Azure Pipelines.
Configure environments and variable groups for multi-stage releases.
Integrate automated deployment gates and rollback policies.
Manage infrastructure dependencies and release security.
Blue-green and canary deployments.
Environment configuration and approvals.
Automated rollback and recovery.
Quality gates and deployment sequencing.
Build a release pipeline with pre- and post-deployment conditions.
Implement environment approvals and rollback automation.
Learn how to secure and automate deployment processes end-to-end.
Lessons:
Design secure deployment patterns for cloud applications.
Manage secrets and configuration using Azure Key Vault.
Integrate feature flags and dynamic configuration.
Implement access controls, service connections, and credentials management.
Validate deployments and ensure compliance using automated scans.
Secrets management best practices.
Role-based access control (RBAC) in pipelines.
Security testing integration (SAST, DAST).
Feature management and experimentation.
Configure Azure Key Vault integration in Azure Pipelines.
Deploy an application using feature toggles.
Automate infrastructure provisioning and configuration at scale.
Lessons:
Deploy resources using ARM templates and Bicep files.
Manage configuration drift and environment consistency.
Implement Desired State Configuration (DSC) and Azure Automation.
Apply Infrastructure as Code pipelines for reproducibility.
Declarative provisioning with templates.
Configuration versioning.
Continuous deployment of infrastructure.
Compliance validation and drift detection.
Deploy an Azure environment using Bicep and pipelines.
Automate configuration updates with DSC.
Ensure efficient package and artifact management within DevOps environments.
Lessons:
Configure Azure Artifacts and secure feed access.
Implement dependency versioning strategies.
Scan for vulnerabilities and outdated packages.
Integrate artifact feeds with CI/CD pipelines.
Package management governance.
Artifact retention and promotion policies.
Dependency compliance and security.
Create and consume internal NuGet/NPM packages.
Configure security scanning for dependencies.
Establish visibility and feedback loops for continuous improvement.
Lessons:
Implement application monitoring using Azure Monitor and Application Insights.
Configure dashboards, alerts, and log analytics.
Capture end-user feedback and integrate it into development cycles.
Correlate telemetry across distributed systems for incident response.
Design feedback channels for retrospectives and KPI tracking.
Telemetry and observability.
Automated alerting and incident management.
Feedback loops and DevOps metrics.
Continuous improvement culture.
Build a monitoring dashboard for deployed applications.
Configure alerts and visualize telemetry in Azure Monitor.