Devops
General 28 questions
- #1What is DevOps?
- #2What are the benefits of DevOps? What can it help us to achieve?
- #3What are the anti-patterns of DevOps?
- #4How would you describe a successful DevOps engineer or a team?
- #5One of your team members suggests to set a goal of "deploying at least 20 times a day" in regards to CD. What is your take on that?
- #6Explain "Open Source"
- #7Describe the architecture of service/app/project/... you designed and/or implemented
- #8What types of tests are you familiar with?
- #9You need to install periodically a package (unless it's already exists) on different operating systems (Ubuntu, RHEL, ...). How would you do it?
- #10What is Chaos Engineering?
- #11What is "infrastructure as code"? What implementation of IAC are you familiar with?
- #12What benefits does infrastructure-as-code have?
- #13How do you manage build artifacts?
- #14What Continuous Integration solution are you using/prefer and why?
- #15What deployment strategies are you familiar with or have used?
- #16You joined a team where everyone developing one project and the practice is to run tests locally on their workstation and push it to the repository if the tests passed. What is the problem with the process as it is now and how to improve it?
- #17Explain test-driven development (TDD)
- #18Explain agile software development
- #19What do you think about the following sentence?: "Implementing or practicing DevOps leads to more secure software"
- #20Do you know what is a "post-mortem meeting"? What is your opinion on that?
- #21What is a configuration drift? What problems is it causing?
- #22How to deal with a configuration drift?
- #23Explain Declarative and Procedural styles. The technologies you are familiar with (or using) are using procedural or declarative style?
- #24Do you have experience with testing cross-projects changes? (aka cross-dependency)
- #25Have you contributed to an open source project? Tell me about this experience
- #26What is Distributed Tracing?
- #27Containerize an Application
- Clone an open source project you would like to containerize. A couple of suggestions:
https://github.com/bregman-arie/node-hello-world https://github.com/bregman-arie/flask-hello-world- Write a Dockerfile you'll use for building an image of the application (you can use any base image you would like)
- Build an image using the Dockerfile you've just wrote
- Verify the image exists
- [Optional] Push the image you've just built to a registry
- Run the application
- Verify the app is running
- #28Highly Available "Hello World"
Set up an highly available "Hello World" application with the following instructions:
- Use a containerized Load Balancer
- Provision two virtual machines (this is where the app will run)
- The page, when visited, should show "Hello World! I'm host X" - X should be the name of the virtual machine
Tooling 3 questions
- #29What do you take into consideration when choosing a tool/technology?
- #30Can you describe which tool or platform you chose to use in some of the following areas and how?
- CI/CD
- Provisioning infrastructure
- Configuration Management
- Monitoring & alerting
- Logging
- Code review
- Code coverage
- Issue Tracking
- Containers and Containers Orchestration
- Tests
- CI/CD
- #31A team member of yours, suggests to replace the current CI/CD platform used by the organization with a new one. How would you reply?
Version Control 7 questions
- #32What is Version Control?
- #33What is a commit?
- #34What is a merge?
- #35What is a merge conflict?
- #36What best practices are you familiar with regarding version control?
- #37Would you prefer a "configuration->deployment" model or "deployment->configuration"? Why?
- #38Explain mutable vs. immutable infrastructure
Software Distribution 12 questions
- #39Explain "Software Distribution"
- #40Why are there multiple software distributions? What differences they can have?
- #41What is a Software Repository?
- #42What ways are there to distribute software? What are the advantages and disadvantages of each method?
- #43Are you familiar with "The Cathedral and the Bazaar models"? Explain each of the models
- #44What is caching? How does it work? Why is it important?
- #45Explain stateless vs. stateful
- #46What is Reliability? How does it fit DevOps?
- #47What does "Availability" mean? What means are there to track Availability of a service?
- #48Why isn't 100% availability a target? Why do most companies or teams set it to be 99%.X?
- #49Describe the workflow of setting up some type of web server (Apache, IIS, Tomcat, ...)
- #50How does a web server work?
GitOps 15 questions
- #51What is GitOps?
- #52What are some of the advantages of applying GitOps?
- #53When a repository refereed to as "GitOps Repository" what does it means?
- #54What are some practical implementations or practices of GitOp?
- #55Two engineers in your team argue on where to put the configuration and infra related files of a certain application. One of them suggests to put it in the same repo as the application repository and the other one suggests to put to put it in its own separate repository. What's your take on that?
- #56What are the differences between SRE and DevOps?
- #57What SRE team is responsible for?
- #58What is an error budget?
- #59What do you think about the following statement: "100% is the only right availability target for a system"
- #60What are MTTF (mean time to failure) and MTTR (mean time to repair)? What these metrics help us to evaluate?
- #61What is the role of monitoring in SRE?
- #62What are the two main SRE KPIs
- #63What is Toil?
- #64What is a postmortem ?
- #65What is the core value often put forward when talking about postmortem?