In a DevOps interview, there are some big pillars of DevOps Engineering Job that you’ll probably be asked about:
- Configuration Management ( Chef, Ansible, Puppet)
- Automation with scripting and programming ( Python, Bash)
- CI/CD Pipeline experience and knowledge ( eg Jenkins)
- Cloud Computing
- Linux and Windows administration
- Git and Git Flows, branching, Merging, Pull Requests, Releases
- Monitoring Systems
- Security and Networking
- Behavior-Related Questions
- DevOps Culture Related ( Continuous learning, documentation, sharing knowledge)
Frequently asked Interview questions
What is your experience with Automating thigs?
What type of experience do you have with scripting/ programming?
What is one project out of work that you have created that you’re proud of?
What’s the difference between Git Merge and Git Rebase?
What’s is your git workflow like?
What configuration management tool have you worked with? Expect some specific questions if the interviewer knows about a tool that you’ve used.
What tools have you used for monitoring infrastructure and applications?
Some of the answers may include CloudWatch, Datadog, NewRelic, Splunk, ELK.
What is Blue/Green Deployment?
A. The fundamental idea behind blue/green deployment is to shift traffic between two identical environments that are running different versions of your application. The blue environment represents the current application version serving production traffic. In parallel, the green environment is staged running a different version of your application. After the green environment is ready and tested, production traffic is redirected from blue to green. Blue/green deployments provide near zero-downtime release and rollback capabilities. Reference Whitepaper
What Is DevOps? How do you define DevOps?
A. DevOps is the combination of cultural philosophies, practices, and tools that increases an organization’s ability to deliver applications and services at high velocity: evolving and improving products at a faster pace than organizations using traditional software development and infrastructure management processes. This speed enables organizations to better serve their customers and compete more effectively in the market. Reference Page
Expect some scenario based questions:
- You have a server crash randomly some times during the day. It is a big server and the memory seems to be running out but CPU is always low. What could be the problem?
They may want to hear how you approach the problem rather than giving you the right answer.
Some of the things I’d do is:
- Check logs on the server
- Check for other related metrics of the server
- Check for metrics related to other resources connected to the server/application
- Look at the Monitoring Dashboard to understand an overall view.
- Ask others if they have faced a similar problem before
- Document the solution after I find the solution. This is important because you always want to learn from a problem.
FAQ about DevOps Interviews
How many interviews are there before you get the job offer?
A common pattern is something like this.
– Phase 1: Phone interview with Recruiter/HR
– Phase 2: Phone interview with IT Manager/Team Lead
– Phase 3: In-person interview ( 3-4 rounds)
- Note sometimes Phase 1 or Phase 2 is skipped for one or the other.
Do I need to know all the tech listed in the job description?
Probably not, as summarized above if you have good knowledge in the 10 areas, you should consider working as a DevOps Engineer position.
What are the common things you’ll do as a DevOps Engineer?
1) Deployment CI/CD pipeline design
2) Create infrastructure using Infrastructure as code tools
3) Configuration Management
4) Monitor Systems
5) Create a better system for moving the work from commit to deploy
6) improve developer support tools and self serve API, automate workflows.
7) Documenting and Diagramming