├── CONTRIBUTING.md ├── LICENSE └── README.md /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # Contributing to DevOps Job Interview Questions 2 | 3 | Open an issue using the [Issue Tracker](https://github.com/spikenode/DevOps-Interview-Questions/issues) of this repo, describing the question you want to add and the category it falls into. 4 | 5 | You can also submit pull requests with changes on README.md. GitHub has a great guide on that: [Forking Projects](https://guides.github.com/activities/forking/) 6 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2015 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | 23 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # DevOps Job Interview Questions 2 | 3 | This file contains a number of interview questions that can be used when vetting potential candidates. It is by no means recommended to use every single question here on the same candidate (that would take hours). Choosing a few items from this list should help you vet the intended skills you require. 4 | 5 | **Note:** Keep in mind that many of these questions are open-ended and could lead to interesting discussions that tell you more about the person's capabilities than a straight answer would. 6 | 7 | Inspired by [Front-end-Developers-Interview-Questions](https://github.com/h5bp/Front-end-Developer-Interview-Questions) 8 | 9 | ## Table of Contents 10 | 11 | 1. [General Questions](#general-questions) 12 | 1. [Network Questions](#network-questions) 13 | 1. [Linux Questions](#linux-questions) 14 | 1. [Windows Questions](#windows-questions) 15 | 1. [Security Questions](#security-questions) 16 | 1. [Cloud Questions](#cloud-questions) 17 | 1. [Architecture Questions](#architecture-questions) 18 | 1. [Automation Questions](#automation-questions) 19 | 1. [CI Questions](#ci-questions) 20 | 1. [Coding Questions](#coding-questions) 21 | 1. [Fun Questions](#fun-questions) 22 | 23 | ## Getting Involved 24 | 25 | 1. [Contributors](#contributors) 26 | 1. [How to Contribute](https://github.com/spikenode/DevOps-Interview-Questions/blob/master/CONTRIBUTING.md) 27 | 1. [License](https://github.com/spikenode/DevOps-Interview-Questions/blob/master/LICENSE.md) 28 | 29 | #### General Questions 30 | 31 | * What does the term "DevOps" mean to you? 32 | * "Hard"/hands-on/SRE vs 33 | * "Soft"/Three Ways/Theory of Constraints/philosophy of DevOps 34 | * Describe your experience with task management 35 | * Agile 36 | * Kanban 37 | * Waterfall 38 | * What drew you to DevOps 39 | * Describe the most challenging situation that you were faced with and how did you fix it? 40 | * How do you stay current? 41 | 42 | #### Network Questions 43 | 44 | * Say I open a web browser and enter an address. I hit enter. Describe how the connection the works in as much detail as possible. Trying to hear that they understand: 45 | * DNS 46 | * Network routing 47 | * Load Balancing 48 | * Ports on server 49 | * Service that is serving port 50 | * What’s a PTR in DNS? 51 | * What’s a MX record in DNS? 52 | * How a CDN chooses the closest host to serve a client? 53 | * In which cases would you choose to not implement a CDN? 54 | * How do you measure the performance of a server/web application? (tools, methods) 55 | * What are secure ways to SSH to a server inside a private network from a public location? 56 | 57 | #### Linux Questions 58 | 59 | * Difference between RAID 0, 1 and 5? 60 | * What’s the advantage of one RAID over another? 61 | * Alternative to init.d in Linux? 62 | * How to view running processes in Linux? 63 | * How to check DNS records in Linux? 64 | * Describe your experience with scripting 65 | 66 | #### Windows Questions 67 | 68 | * Are you familiar with just linux or have you worked with Windows environments as well? 69 | * If yes to windows do you use powershell? Octopus Deploy? TeamCity? Active Directory? Azure? 70 | 71 | #### Security Questions 72 | 73 | * Difference between authorization and authentication? 74 | * Describe two-factor authentication 75 | * Describe how would you secure a web application 76 | * HTTP vs HTTPS 77 | * Talk about PKI/your experience with SSL/Certificates 78 | 79 | #### Cloud Questions 80 | 81 | * Have you used AWS or other cloud platforms? 82 | * How long for? 83 | * In production or just at home on personal projects? 84 | * How to keep logs on servers or containers with ephemeral storage? 85 | * Where to look when trying to reduce cloud costs without reducing capacity? 86 | * Name the "Big Three" cloud providers 87 | * AWS 88 | * GCP 89 | * Azure 90 | 91 | ##### AWS Questions 92 | 93 | * Describe the advantages/disadvantages of using CloudFormation to manage your resources 94 | * Would you use CloudFormation to create a RDS database? 95 | * Describe EC2 spot instances and which use cases it can be used to reduce costs 96 | * Talk about IAM roles 97 | * Talk about VPC's 98 | * Subnets 99 | * Internet Gateways 100 | * NATing 101 | * NACL's 102 | * VPN/VPC Peering 103 | 104 | #### Database Questions 105 | 106 | * What's the use case for a database read replica? 107 | 108 | #### Architecture Questions 109 | 110 | * How to scale a database without just increasing capacity of a single machine while maintaining [ACID](http://en.wikipedia.org/wiki/ACID)? 111 | * How to choose between relational database and noSQL? 112 | * What advantages a NoSQL database like MongoDB has, comparing to MySQL? 113 | * How to manage API versions? 114 | * How to reduce load time of a dynamic website? 115 | * How to reduce load time of a static website? 116 | 117 | #### Automation Questions 118 | 119 | * Have you used Puppet, Chef, Salt or Ansible? 120 | * How long have you used it for? 121 | * Have you used it in production? 122 | * Describe the size of the environment that you automated (how many servers, small scale or large scale) 123 | 124 | #### CI Questions 125 | 126 | * Are you familiar with CI tools? Which ones? 127 | * Describe your experience implementing continuous deployment 128 | * How do you setup an end-to-end pipeline from dev to deployment? (long answer) 129 | * How can Docker help in this case? 130 | * How frequently have you been deploying? 131 | * Have you been able to improve the frequency of deployments? If so, how? 132 | 133 | #### Coding Questions 134 | 135 | * Describe a dev/test/production workflow using GIT 136 | * Feature branching vs trunk based development 137 | * Advantages of requiring pull requests and approvals 138 | * More on [Front-end Developer Job Interview Questions](https://github.com/h5bp/Front-end-Developer-Interview-Questions/blob/master/README.md) 139 | 140 | #### Fun Questions 141 | 142 | * Do you have any side projects? 143 | * If you could learn any technology now, what would be? 144 | 145 | --------------------------------------------------------------------------------