Devops Interview Questions and Answers:-
1. Define What is DevOps?
It is a newly emerging term in the IT field, which is nothing but a practice that emphasizes the collaboration and communication of both software developers and other information technology (IT) professionals. It focuses on delivering software product faster and lowering the failure rate of releases.
2. What are the key aspects or principle behind DevOps?
The key aspects or principle behind DevOps is
- Infrastructure as code
- Continuous deployment
- Automation
- Monitoring
- Security
3. What are the core operations of DevOps with application development and with infrastructure?
The core operations of DevOps with
Application development
- Code building
- Code coverage
- Unit testing
- Packaging
- Deployment
With infrastructure
- Provisioning
- Configuration
- Orchestration
- Deployment
4. How “Infrastructure of code” is processed or executed in AWS?
In AWS,
- The code for infrastructure will be in simple JSON format
- This JSON code will be organized into files called templates
- This templates can be deployed on AWS and then managed as stacks
- Later the CloudFormation service will do the Creating, deleting, updating, etc. operation in the stack
5. Which scripting language is most important for a DevOps engineer?
A simpler scripting language will be better for a DevOps engineer. Python seems to be very popular.
6. How DevOps is helpful to developers?
DevOps can be helpful to developers to fix the bug and implement new features quickly. It also helps for clearer communication between the team members.
7. List out some popular tools for DevOps?
Some of the popular tools for DevOps are
- Jenkins
- Nagios
- Monit
- ELK (Elasticsearch, Logstash, Kibana)
- io
- Jenkins
- Docker
- Ansible
- Git
- Collected/Collectl
8. Mention at what instance have you used the SSH?
I have used SSH to log into a remote machine and work on the command line. Besides this, I have also used it to tunnel into the system in order to facilitate secure encrypted communications between two untrusted hosts over an insecure network.
9. How would you handle revision (version) control?
My approach to handling revision control would be to post the code on SourceForge or GitHub so everyone can view it. Also, I will post the checklist from the last revision to make sure that any unsolved issues are resolved.
10. What are the types of Http requests?
The types of Http requests are
- GET
- HEAD
- PUT
- POST
- PATCH
- DELETE
- TRACE
- CONNECT
- OPTIONS
11. What would you check If a Linux-build-server suddenly starts getting slow?
If a Linux-build-server suddenly starts getting slow, you will check for the following three things
12. How does HTTP work? How does a web page appear in a browser?
Basically, to prove that you understand (at a high-level) the infrastructure you’ll be working with, as well as the ability to explain concepts to others. DevOps is about communication too, remember?
13. What are some examples of how you might scale a write/read-heavy application? Why?
Do you know how to scale different kinds of applications? How would you identify bottlenecks? Do you have a reasonable understanding of how to scale an entire environment, or migrate to the cloud (or another cloud) if necessary?
14. Tell me about the worst-run/best-run outage you’ve been a part of. What made it bad/well-run?
Take lessons from both failures and successes in dealing with outages. Remember, there’s no shame in talking about the mistakes you’ve learned from.
15. How would you assess how “deployable” a system is?
How do you know when a deployment is ready? How would you manage that deployment?
16. How would you prepare for a migration from one platform to another?
Fairly self-explanatory, how do you handle transitions? How do you document the current state of your environment before moving, and how do you validate everything is as it should be after the fact?
17. What is the purpose of a post-mortem meeting?
Do you know how to learn from mistakes? How do you get the most value out of post-mortems?
18. How would you make key aspects of a software system traceable?
So that you can figure out what happened quickly if/when something goes wrong. What types of monitoring and alerting are most important to you? What tooling do you use?
19. How do you handle interruptions?
While it’s going to be your job to stop interruptions, how you deal with them now is important for getting an idea of if you know how to fix them quickly and if you know how to make devs and ops work together.
20. How would you deploy software to 5000 systems?
Do you know how you would go about large-scale deployments?
DevOps Questions pdf free download::
21. Define What different types of testing need to be carried out on a software system, and what tools would you use to achieve this testing?
For starters, you probably would want to test that your configurations are correct before and after making changes, and know how to validate that your environments are all consistent.
22. Discuss your experience building bridges between IT Ops, QA, and development?
DevOps is all about effective communication and collaboration. I’ve been able to deal with production issues from the development and operations sides, effectively straddling the two worlds. I’m less interested in finding blame or playing the hero than I am with ensuring that all of the moving parts come together.
23. What types of testing are needed?
Software teams will often look for the “fair weather” path to system completion; that is, they start from an assumption that software will usually work and only occasionally fail. I believe to practice defensive programming in a pragmatic way, which often means assuming that the code will fail and planning for those failures. I try to incorporate unit test strategy, use of test harnesses, early load testing; network simulation, A/B and multivariate testing, etc.
24. Which scripting languages do you think are most important for a DevOps engineer?
As far as scripting languages go, the simpler the better. In fact, the language itself isn’t as important as understanding design patterns and development paradigms such as procedural, object-oriented, or functional programming.
25. How do you expect you would be required to multitask as a DevOps professional?
I believe I’ll be expected to:
Focus attention on bridging communication gaps between Development and Operations teams.
Understand system design from an architect’s perspective, software development from a developer’s perspective, operations and infrastructure from the perspective of a seasoned Systems Administrator.
Execute – to be able to actually do what needs to be done.
26. What testing is necessary to ensure that a new service is ready for production?
DevOps is all about continuous testing throughout the process, starting with development through to production. Everyone shares the testing responsibility. This ensures that developers are delivering code that doesn’t have any errors and is of high quality, and it also helps everyone leverage their time most effectively.
27. Define What’s a PTR in DNS?
Pointer records are used to map a network interface (IP) to a hostname. These are primarily used for reverse DNS. Reverse DNS is set up very similar to how normal (forward) DNS is set up. When you delegate the DNS forward, the owner of the domain tells the registrar to let your domain use specific name servers.
28. Describe two-factor authentication?
Two-factor authentication is a security process in which the user provides two means of identification from separate categories of credentials; one is typically a physical token, such as a card, and the other is typically something memorized, such as a security code.
29. Define What other tools might help you in this role?
DevOps is so diverse and inclusive that it rarely ends with coding, testing, and systems. A DevOps project might rely on database platforms like SQL or NoSQL, data structure servers like Redis, or configuration and management issue tracking systems like Redmine. Web applications are popular for modern enterprises, making a background with Web servers, like Microsoft Internet Information Services, Apache Tomcat or other Web servers, beneficial. Make sure to bring across that you are familiar with Agile application lifecycle management techniques and tools.
30. Tell us about the CI tools that you are familiar with?
The premise of CI is to get feedback as early as possible because the earlier you get feedback, the fewer things cost to fix. Popular open source tools include Hudson, Jenkins, CruiseControl, and CruiseControl.NET. Commercial tools include ThoughtWorks’ Go, Urbancode’s Anthill Pro, JetBrains’ Team City, and Microsoft’s Team Foundation Server.