Plan - Initially, there should be a plan for the type of application that needs to be developed. Getting a rough picture of the development process is always a good idea.
Integrate - Multiple codes from different programmers are integrated into one.
Build - Create CI/CD pipelines which would auto build application code on code commits.
Test - Create CI/CD pipelines which would auto execute the unit and integration tests and based on the status execute the next steps of the pipeline.
Continuous Delivery
Ensure code can be safely deployed on to production
Ensure business applications and services function as expected
Deliver every change to a production-like environment through rigorous automated testing
Continuous Deployment
Every change that passes the automated tests is deployed to production automatically
Make software development and the release process faster and more robust
A culture of monitoring
Handle Infrastructure
Create an infrastructure requirement plan based on client requirements.
Cost analysis of the infrastructure
Build infrastructure code repositories using frameworks like ARM, terraform
Handle scale up and scale down of infrastructure for performance needs and cost optimisations.
Cloud services
Using cloud services like dockers, kubernetes for deployment.
Good understanding of using the cloud logging services for continuous monitoring.
Setting up Alerts using cloud services
Knowledge of security services on cloud platforms
Skills:
Ability to troubleshoot issues on Windows / Linux
Setup/configure CI/CD pipeline leveraging Azure native services or traditional tools (e.g. Azure pipelines, Jenkins, GitHub, Artifactory, SonarQube, Chef, Ansible etc)
Deploy applications on Azure platform leveraging Microsoft Azure platform services like App Service, AKS, Vms, Azure Functions, Containers, Azure Database, Azure pipelines etc
Strong skills in Azure networking, such as configuring virtual networks, firewalls, load balancers, and VPNs.
Automation scripting skills with PowerShell and Azure CLI
Hands on in writing IAC (ARM, terraform scripts for infrastructure).
Hands on experience working with serverless architecture (Azure Functions)
Onboarding applications on Azure DevOps platform as per required workflow for CI/CD
Application containerization with Docker & Kubernetes (AKS)
Support necessary remediation for application and operations team for onboarding apps to CI/CD pipelines
Integration of various test automation frameworks and tools in the CI/CD Azure pipelines
Integration of security frameworks
Monitor and respond to events or incidents on the DevOps platform and the onboarded applications and infrastructure
Good knowledge of Prometheus, Grafana is preferred.
Implement automations using Ansible or other scripting
Develop reusable assets for the DevOps related work
Document and maintain all platforms, CI/CD pipelines and other relevant integrations
Experience:
4+ years of experience in DevOps role
2+ years of Azure experience in Infrastructure as Code
Working experience with Azure DevOps
Working experience with App Services, AKS, Docker Containers, Azure Functions
Working experience with ARM is must, Knowledge on Terraform