Nail Your DevOps Interview'

Table of Contents

1. Introduction

  • Transform your career in DevOps
  • What you should know
  • DevOps vs. SRE (Site reliability engineer) vs. Automation Engineer

2. Interview Prep

  • Preparing for the interview
  • Researching the opportunity
  • Getting DevOps experience
  • Certifications
  • Methods for answering questions
  • Quiz:
    • Question 1 of 9: During an interview, what is the show-and-tell method most useful for?
    • describing the relation between objects in a system (correct answer)
    • describing bullet points on your resume
    • describing your experience with a particular technology
  • Question 2 of 9: When using the story time approach to answering a question, what should the end of your story focus on?
    • The end of the story should focus on results that were achieved through your contributions. (correct answer)
    • The end of the story should focus on why you're looking for a new job.
    • The end of the story should focus on the mistakes made by others that you were able to fix.
  • Question 3 of 9: If you are preparing for interviews with a company that is moving to the cloud, what type of certifications should you consider?
    • certifications from programming language vendors (correct answer)
    • certifications from operating system vendors
    • certifications from cloud service providers (correct answer)
  • Question 4 of 9: Certifications can improve your position as a candidate.
    • FALSE
    • TRUE (correct answer)
  • Question 5 of 9: What approach can you use to keep costs down while getting experience with DevOps tools and cloud platforms?
    • Use proprietary tools and fixed price contracts for cloud platforms.
    • Use your friends' tools.
    • Use open source tools and free tiers for cloud platforms. (correct answer)
  • Question 6 of 9: To make sure you're qualified for the job, what should you do?
    • Review the job description and focus on the skill you are 100% qualified for.
    • Review the job description and prepare to answer questions on the skills you are 100% qualified for and those that you may need to improve on. (correct answer)
    • Review the job description and decline to interview for any job that does not line up with your skills and experience.
  • Question 7 of 9: During the interview, you should refer to your notes and prepared questions on your mobile device.
    • False (correct answer)
    • True
  • Question 8 of 9: Conducting a mock interview with a colleague is the best approach to prepare for interviewing.
    • True (correct answer)
    • False
  • Question 9 of 9: What's the best way to start a response to the prompt, "Tell me about yourself"?
    • Describe in detail each position you have held at every company you have worked for.
    • Briefly summarize your professional background. (correct answer)
    • Starting from your childhood, explain how you became interested in your career choice. List the classes and training you took to become qualified in your field.

3. DevOps Business Practices Questions

  • Defining DevOps: CAMS
    • Culture
    • Automation
    • Measurement
    • Sharing
  • The DevOps lifecycle
  • Lean vs Agile vs DevOps
  • CI/CD
    • CI/CD bridges the gaps between development and operation activities and teams by enforcing automation in building, testing and deployment of applications. CI/CD services compile the incremental code changes made by developers, then link and package them into software deliverables. Automated tests verify the software functionality, and automated deployment services deliver them to end users. The aim is to increase early defect discovery, increase productivity, and provide faster release cycles. The process contrasts with traditional methods where a collection of software updates were integrated into one large batch before deploying the newer version.
    • CI/CD process
  • Configuration management
  • Monitoring and alerting tools
    • Nagios
    • Sensu
    • New Relic
    • Datadog
  • Testing
    • Functional Testing: Selenium, JUnit, Cucumber
      • Unit tests
      • Integration tests
    • Performance Testing: Jmeter, Gatling, Apache Bench.
      • Response tests
      • Load tests - requests from users
  • Challenge: Server based deployment to Container deployment???
  • Solution: erver based deployment to Container deployment
  • Quiz:
    • Question 1 of 8: What shape is used to represent the DevOps lifecycle?
      • a square
      • a circle
      • an infinity symbol (correct answer)
    • Question 2 of 8: Why is testing an important part of continuous integration?
      • Testing helps development and operations teams build a culture of communication. (correct answer)
      • Testing helps to find and resolve problems early in the development cycle.
      • Testing helps generate features for the next release of an application.
    • Question 3 of 8: If an interviewer asks the following question, what could they be trying to determine? "What configuration tools are you most familiar with and how have you used them?"
      • the candidate's experience with tools like Terraform and Cloudformation
      • the candidate's experience with tools like Jenkins, CircleCI, and GitHub Actions
      • the candidate's experience with tools like Ansible, Chef, and Puppet (correct answer)
    • Question 4 of 8: To answer questions about CI/CD, what should you know?
      • How to use all of the CI/CD tools on the market.
      • The main concepts of CI/CD, like building, testing, and deploying. (correct answer)
      • The difference between delivery and deployment.
    • Question 5 of 8: What is the primary benefit of CI/CD?
      • Developers can find and resolve problems more quickly. (correct answer)
      • Software is kept in revision control.
      • Deployments are automated so minimal human interaction is needed.
    • Question 6 of 8: What approach is best for comparing the Lean and Agile software development methods?
      • story time method
      • definition method (correct answer)
      • THX method
    • Question 7 of 8: The acronym C.A.M.S is often used to define DevOps. What do each of these letters stand for?
      • containers, automation, measurement, and shell scripts
      • culture, automation, measurement, and sharing (correct answer)
      • CI/CD, automation, monitoring, and sharing
    • Question 8 of 8: From the following alerts, which of these is most likely to be considered an alarm?
      • The production server's SSL certificate will expire in 30 days.
      • The production server's disk is 100% full. (correct answer)
      • The production server's deployment completed successfully.

4. Common DevOps Skills

  • Operating systems: Windows, MacOS or Linux Operating system.
  • Command line tools
  • Scripting and Programming
  • Software version control: Git, gitLab, Bitbucket
  • Troubleshooting
  • Indent management
  • Security
  • Quiz:
    • Question 1 of 8: What is a a common use for command line tools in DevOps roles?
      • sending alerts and notifications
      • extracting information from systems (correct answer)
      • running tests in a CI/CD pipeline
    • Question 2 of 8: What's a good approach for answering questions about your experience with operating systems?
      • show-and-tell method
      • definition method
      • THX method: time, how, experience (correct answer)
    • Question 3 of 8: What's the best way to begin your response when prompted with a troubleshooting scenario?
      • Start by listing the various types of systems you've worked on.
      • Start by explaining that you've never had the need to troubleshoot.
      • Start by asking questions about the scenario. (correct answer)
    • Question 4 of 8: What feature of version control helps with collaboration between development and operations teams?
      • requests for comments
      • change requests
      • pull requests (correct answer)
    • Question 5 of 8: You've just joined a team and need to get the code for a project that is already being developed. The team is using git to manage the code. What command would you use to download a copy of the code so you can start working on it?
      • git clone (correct answer)
      • git pull
      • git init
    • Question 6 of 8: Why is scripting an important part of DevOps?
      • Scripting is useful because APIs can only be accessed with Python scripts.
      • Scripting is useful because Bash is the only language that can be used for DevOps tasks.
      • Scripting is useful for automating any sort of process that needs to be repeated the same way every time. (correct answer)
    • Question 7 of 8: When considering the security of compute systems, the acronym CIA is often used. What does CIA stand for in this context?
      • central, intelligence, and agency
      • confidentiality, integrity, and availability (correct answer)
      • continuous, integration, and automation
    • Question 8 of 8: If you are asked about your experience with incident management, what's a good way to wrap up your response to the question?
      • including details on improving alerting and notifications
      • including details on what you learned from the incident (correct answer)
      • including details on how you handed the incident off to another team member

5. Cloud services Questions

  • Cloud services and their benefits: Scalability
  • Architecting cloud solutions
  • Infrastructure as code:
    • Scale and Automation
    • Modularity and Reuse
    • Infrastructure: AWS, Google Cloud, Azure.
  • Quiz
    • Question 1 of 3: Which of these is the best description for infrastructure as code?
      • With infrastructure as code, engineers use code to collaborate with developers and architects.
      • With infrastructure as code, engineers use code authenticate users that log into web applications.
      • With infrastructure as code, engineers use code to describe the servers, load balancers, firewalls, and other resources that create a system. (correct answer)
    • Question 2 of 3: When answering questions about cloud architecture, you need to demonstrate your ability to translate business requirements into deliverable solutions.
      • FALSE
      • TRUE (correct answer)
    • Question 3 of 3: Your interviewer has asked about your experience with migrating a service from an on-premises data center to a cloud provider. What's the best approach for sharing your experience?
      • story time method, describing the last cloud migration you participated in (correct answer)
      • evasion method, asking to skip this question and move on to the next one
      • definition method, describing the benefits of migrating to the cloud

6. Applications and Services Questions

  • Web servers: Apache vs NGINX
  • Databases
  • Containers:
    • Dockerfile - text document with commands to assemble an image
    • Container Image: Credited from the dockerfile
  • Challenge: N-tier web architecture
  • Solution: <iframe width="100%" height="500" src="Solution - N-Tier Web Architecture.pdf">
  • Quiz
    • Question 1 of 4: Why are containers important for DevOps?
      • Containers lead to consistent storage of code that keeps applications fresh.
      • Containers lead to consistent development and deployment methodologies that can be iterated easily. (correct answer)
      • Containers are the only processes that can be run on cloud infrastructure.
    • Question 2 of 4: What file is used to describe a container image?
      • Jenkinsfile
      • Makefile
      • Dockerfile (correct answer)
    • Question 3 of 4: What's one the main benefits of using NoSQL databases?
      • NoSQL databases keep data models unchanged over time.
      • NoSQL databases work with data models like a spreadsheet.
      • NoSQL databases allow data models to change over time. (correct answer)
    • Question 4 of 4: How is NGINX used in modern web application architectures?
      • NGINX is used to serve both static and dynamic content without interacting with other applications.
      • NGINX is used to serve static content and proxy to other applications for dynamic content. (correct answer)
      • NGINX is used to serve dynamic content and proxy to other applications for static content.

7. Wrapping Up your Interview

  • Asking Questions
  • Following up
  • Quiz
    • Question 1 of 2: Following up with a note after an interview is a great for _____.
      • expressing appreciation for the interviewer's time and showing continued interest in the job (correct answer)
      • letting the interviewer know you have offers from other companies
      • asking the interviewer for the first available start date in advance of a job offer
    • Question 2 of 2: Asking questions offers an opportunity for the candidate to manage the interview.
      • TRUE (correct answer)
      • FALSE