Devops requires all-round knowledge of the software development process, tools, programming languages, scripting, testing and integration methods. The area is critical and vast, hence you should be good with both theory and should be hands on to handle day to day operations.
Here are 120+ questions you may face on usual basis or ask yourself on your journey to learn Devops/Azure Devops, reviewing your knowledge of the subject, practicing or increasing self awareness, you may want to use them for interview preparations.
Each of the following question may represent a subject in Azure Devops at high level or implementation related/low level concept.
I am working on adding answers/possible guidance links and they will be added shortly, working in sprints ;)
- What is Devops?
- What do you mean by the phrase “Team owns it, Team runs it and Team maintains it”?
- What is DevSecOps?
- Since MLOps is also getting traction we should also know something about it. Hence we can face this basic question — What is MLOps all about?
- What is Azure Devops?
- What is the simplest process of setting up Azure Devops in your organization?
- What are benefits of using Devops?
- What are key enablers of Devops?
- What are key tools used for Devops?
List down all the tools required for version control, GIT/TFVC based repo management, tools offering CICD like Azure Devops, Bamboo, Circle CI, Jenkins, Infrastructure management and Desired State Configuration tools like Terraform, Chef, Puppet, Ansible, Security and Identity management, Monitoring tools. You should know at least one tool really well for each area, how to host it, costing and managing on day to day basis.
- Do you know Azure Devops, GitHub, Jenkins, CircleCI, Bamboo, Jira, Azure Boards, Terrafrom, Ansible?
- What is Site Reliability Engineering? Why is it gaining traction these days?
- What is Azure Devops MarketPlace?
- What are Azure Devops Extensions?
- Have you used Azure Devops CLI? Do you know basic tasks you can perform with Azure Devops CLI?
- What is CNCF?
- What are cloud native applications?
- What is the difference between IAAS, PAAS, SAAS?
- What is serverless computing?
- What are different cloud platforms?
- Are you aware of any cloud platform agnostic deployment tools?
- What is a distributed and centralized code repo?
- What is version control management/service?
- What is Git? What are different Git Services providers available online? Example — GitHib, BitBucket, GitLab?
- What is the use of Slack and how can you use it with Azure Devops?
- How can you configure Jenkins to run with GitHib, Azure Devops Git repos?
- When can you use Azure Approvals and Gates? What are differences between the two?
- What are different types of authentication techniques you can use with Azure Devops with integrated services?
- How can you find out vulnerabilities in your code?
- How can you find out vulnerabilities in open source libraries?
- What are different type of licenses available with Azure Devops?
- How can you configure multiple builds in parallel for multiple code repos in your projects/organization?
- What is the difference between Service Connection and OAuth based authentication methods? In what scenarios they can be used?
- What is Agile and what are differences between Basic, Scrum, CMMI?
- What is the workflow available for Basic, Scrum, Agile and CMMI processes?
- What is the use of Azure Devops Board?
- What is relative estimation?
- What is story point based estimation, why is it importance, how is it different from hour/man day based estimation?
- What is a sprint in Agile Devops, how can you create one? What are the best practices for creating a sprint?
- What is the difference between Epic, Feature and User Stories?
- What are the best practices of delivering in a two week sprint duration?
General, Security, Etc.
- What is OWASP?
- what is the differences between virtualization and containerization?
- What is the role of a identity provider, what service can be used for identity management along with Azure Devops?
Pipelines and Building Infrastructure
- What is a CI Pipeline
- What is a CD Pipeline?
- What is a Multistage Pipeline?
- What is a stage in a pipeline
- What is a job?
- What is a task?
- How can you invoke an action in a pipeline for which you don't have any pre-build task available?
- What is an agent in a build pipeline?
- What is the difference between self hosted agents and Microsoft hosted agents?
- What are the possible use cases/conditions when you will use a self hosted agent? This is important for you to know if you want to have full control of the Devops practice.
- What are the alternatives to self hosted agents?
- How can you address situation where you want to use a fixed version of software to build your code in Azure Devops world?
- What does the number behind tasks specify in CI/CD pipelines? e.g. Npm@1, Docker@2, KubernetesManifest@0?
- What is an ARM Template? How they are used?
- What is Terraform Workflow?
- What is Terraform Enterprise?
- What is the purpose of Terraform init, Terraform Plan and Terraform Apply?
- How can you use secrets in Terraform?
- What are workspace in Terraform?
- What is the key differences between ARM templates, Azure CLI/Azure Powershell or Terraform based IAC? Which one is better?
- Of the above which one is imperative and declarative IaC?
- What are key differences between Azure CLI and Azure Powershell CLI?
- How can you pass parameter values to Terraform based on environments?
- What is Powershell DSC?
- What is a Runbook? How it can be used with Azure Automation?
- What is a Deployment Slot?
- What is a Deployment Group?
- What is the difference between Deployment Slot and a Deployment Group? What is required to achieve deployments to a Deployment Slots and Deployments Groups?
- What is Infrastructure as Code?
- What are different options of doing Infrastructure as code(IaC)?
- What are the benefits of declarative and imperative IaC?
- what is the process to deploy containerized application to AKS?
- What do you mean by Docker container?
- What is the Docker image creation process? what all is required?
- What is a container registry and how can you utilize this service in Azure Devops? What are the benefits of using a container registry?
- What is the different between Public and Private repositories?
- How you can test your container images?
- How can you Dockerize or containerize a .Net Core/Node or Python application?
- What is ACR, ACI, AKS?
- What is a cluster in Kubernetes?
- What is liveness probe? When is this used and how is this configured?
- What is a Service Mesh? Any examples of Service Mesh implementation?
- What is Helm charts?
- What are ACR tasks?
- How can you publish applications to a Webapp using CICD pipelines? what are the activities are involved?
- What are different types of deployment strategies?
- How can you achieve Canary release, Rolling, Blue Green Deployments?
- What are the benefits of using Ansible?
- What are key strengths of Configuration Management tools?
- What do you mean by instrumentation?
- What are different means of application instrumentation?
Site Reliability Engineering(SRE)
- What is required to achiever 100% SRE?
- What is Application Insights and where and how it can be used?
- What are the key principles of the SRE, how you can use them?
- What is an Azure Load Balancer?
- What is scale-out and scale-up? Which one is better? What are different options of using Scale out in Azure provided services in the IAAS, SAAS and Serverless offerings? Do you know the usecases on when to use which service?
- What is a Virtual Machine Scale Set?
- What are different types of agents(do not get confused with build agents in Devops, we are referring to probes made available by Microsoft ) you can install on Azure resources like a VM?
- What is Azure Traffic Manager?
- What is a Azure Load Balancer? Why should you use one?
- What is Azure Monitor?
- What is Log Analytics?
- What are Azure Alerts?
- Can you trigger Azure Functions using a Azure Alert and why would you do that?
- What are benefits of using Prometheus?
- How is Prometheus configured for monitoring?
- What is ITSM tools and how can you connect your Devops infra with them?
- What is Elastic?
Desired State Configuration
- What is Azure Automation and why it should be used?
- What is a Azure Automation Runbook and how can you create one? What are the technologies you may want to use?
- What is Azure Automation Account? What is the relevance of the setting “Run as Account”
- List down steps to add a Windows VM to Azure DSC?
You may want to follows this link if you want some scenarios to improve your hands on with Azure Devops:
Please note that the article is just first draft and it expect it to be refreshed over time.