“Employers are hungrier than ever for Linux talent.”
That’s what a report from Dice says.
Dice also thinks a whooping 97% of IT Managers are still interviewing Linux admins.
I agree with Dice about 2015…
…but I also see the Linux Wave growing more in 2016.
Especially if you are recruiting talent for cloud projects or DevOps.
In the next few minutes I’m going to share what I’ve learned over the last 2 years while interviewing and hiring 3 DevOps Engineers and 2 Linux Admins.
But first let me set the right expectation.
I’ve sat through quite a few interviews from both sides of the hiring process…
…as the interviewer and as the interviewed.
In both scenarios, it hasn’t always been a good experience – especially when I felt the interview panel was not prepared, or they were just testing for technical skills and experience by asking all technical related questions.
Sorry, but this no longer works!
With more organizations moving towards DevOps and Hyper-Converged Teams you need more than 3 people in a room firing technical questions from the hip…you need a system.
A Story To Get Passionate About
I’ve personally tested this system for writing interview questions many times and it has helped me for years to find some of the best and brightest IT talent.
No, it’s not perfect but it will increase your success rate for hiring people who are passionate and add more than just technical skills to your team!
Here’s how my story based system works…
Let’s start by understanding what the outcome is you want.
- Does this new person need to work with other admins? (Teamwork)
- Are you a startup or has your IT been around for decades? (Reduce Complexity)
- Will this person be doing hardware or infrastructure design and support? (Ops)
- Does this new Linux admin need to know how to use vSphere or OpenStack for server deployments? (Virtualization)
- Will this new admin be working on projects in the cloud? (Read about Cloud Readiness)
- Will you be using automation tools such as Chef or Ansible? (Automation)
- Will they be helping with software releases or code updates? (Continuous Integration)
- Will they need to fit into an operation that uses DevOps for service delivery? (Read about DevOps Skills)
- Are they allowed to work from home? How often? (Availability)
- Do they need to solve problems related to fragile code that crashes? (Troubleshooting)
The questions above are reality based and the answers should be used to help craft the interview questions as well as the job description.
Here’s a link so you can read some typical Linux job descriptions on SimplyHired.
Like I said in the beginning, I’ve been a part of too many interviews where random questions are plucked out of the air by a panel of admins or managers that are more to show-off themselves than to bring out the good or bad in an interview candidate.
Don’t waste your time or the interviewee’s time by not properly planning your Linux interview questions.
Now let’s get to the questions I created based on the answers above.
Note: If you want to add a few technical Linux questions here’s a link for Linux commands, but I also recommend knowing in advanced what questions will be asked; and having a clean whiteboard and good markers available in the meeting room.
Linux Interview Questions
We’re going to take all the questions I just asked above and turn this maze of answers into a carefully crafted list of Linux interview questions that builds upon real use cases.
Note: The same process I used above can serve to craft interview questions for DevOps Engineer or Cloud Engineer, just focus more on scripting, automation, cloud services; and of-course, communication.
Here we go…
Our company XYZ has a large infrastructure with various versions of Linux that include old Red Hat 5.x all the way up to the current version of Core OS.
Our Linux team works closely with our developers and shares in building and supporting all our applications on premise and in the cloud.
We love to do things fast and with automation…
General Linux Questions
Q1. Please give us some examples of your experience working with other Linux Admins and explain which Linux distributions you are most familiar with?
We play hard, and work harder; which means we can spend a lot of hours together.
Q2. Tell us about some of the challenges you have had with other admins and how you handled them?
Every now and then we run into a snag that pushes us past our current level of expertise.
Q3. Tell us about some of the challenges you have had deploying new Linux servers and supporting the applications they host?
Our Linux team does it all, from deployments to support. They also work closely with developers.
Q4. Please give some examples of your experience building complete environments, which includes: architecture of the hardware and network design that will be used to host in-house applications that require “MySQL, NGINX, Memcached and Java”? (Replace this with your config.)
Q5. Now tell us how you would explain the architecture to developers who are only asking for a server?
The answers to these question will provide a baseline for the rest of the interview.
Questions About Tools, Virtualization & Cloud
We love to use cool tools as much as possible.
Q6. Tell us about any tools you have used for configuration management, such as “Ansible or CFEngine?” (Replace this with your preferred tools)
Our internal infrastructure is hosted on VMware but we also use OpenStack in some cases.
Q7. Please tell us about your experience working with vSphere and/or OpenStack?
Q8. Which private cloud solution do you think is better and why?
As a follow-up question to the one on vSphere and OpenStack, let’s go deeper into understanding if the applicant has done any automation via the vSphere or OpenStack APIs. Go as deep into this as possible here, especially if automating is going to be expected.
Q9. Tell use about your experience writing code to use the vCenter or OpenStack APIs?
Good answers to these questions will include a lot of technical details about scripting and SOAP/RESTful code and/or queries.
Questions About Troubleshooting
Once in a while when we are working with developers we may need to look at the code to help figure out why a release is failing.
Q11. Tell us about your experience helping out with solving release issues related to database connections, VIPS, App-pools, DNS or other code related problems that happen on IaaS. (Or if this is in the cloud translate it to PaaS)
We have a few software applications that tend to be fragile and we need to be extra careful any time we make code changes.
Q12. Tell us about your experience dealing with fragile code and how you handle it?
Q13. Also tell us about any experience you have solving service availability problems that are related to bad code?
Good answers with examples that show technical depth for troubleshooting and always having a rollback plan or backups show maturity.
Questions About Cloud Environments
We host a lot of our services in the cloud.
Q14. Tell us about your experience supporting developers on a PaaS.
Q15. Please be as detailed as possible about what your roles was/is and how you provided cloud support?
Fine details about Data and Identity Management in the cloud are always good answers.
Questions About Docker Containers
We have been working on transferring some of our applications to Docker Containers.
Q16. Please tell us about your experience deploying MySQL, Apache and Php in a container, and then how you would setup the connection from the database to the application?
Q17. What Docker Books or references are your favorites?
Any real experience using containers is unique and should be noted.
Questions About DevOps
Q19. Have you ever heard of DevOps?
Q20. Please tell us what DevOps is and how you would fit into this way of working?
Ignorance is bliss! Most good Linux admins will fit very well into DevOps.
Questions About Work Habits
We tend to work around the clock and sometimes you will get called after hours to help with a release or to support someone else who is having trouble.
Q21. How often are you okay with us calling you after hours?
My team spends most of their time working on site.
Q22. How often will you want to work remote or from home if it is allowed?
On-call and working from home are both very real wants/needs so be clear to set a true expectation.
More General Questions
Every day something new is released that makes a Linux admin’s job even more exciting.
Q23. Tell us how you stay updated on all the new open source tools?
Q24. Are you a member of any user groups?
Q25. Which ones?
Q26. Do you have a test lab at home, or online?
Q27. Tell us about it?
Q28. Tell us which version of Linux you prefer and why it is better than the others?
Good talent are always learning on their own time. Be mindful if all someone is concerned about is company sponsored training.
Q29. Rate your Linux skills from 1 – 10, seven being a Rock Star?
Q30. Now tell us why are you the best choice for this job?
There you have them.
30 Linux admin interview questions custom written to help you find the complete admin.
Like I said, this system is not perfect but it does help focus on many of the softer skills quite often overlooked during technical interviews.
- Communication Skills
- Teamwork / Collaboration
- Troubleshooting / Diagnostic Skills
- Work Habits / Expectations
- Self Motivations / Creativity
- Passion / Sense of Ownership
All these skills and traits work hand in hand with technical expertise when trying to find the complete admin for today’s fast-paced IT, especially if you have DevOps in your future.
Now I want to hear from you.
What do you think of this list?
What did I miss?
Whether you liked this list or not, I want to know.
Leave your comments below.