Recently I was asked to be part of an Interview panel to recruit DevOps resources for various levels. Prior to the interview I got an one page job description from the recruiter listing few items as follows
- high linux skills
- basic redhat
- bash scripting
- ansible, chef
- rpm packaging
- Build and release
From the recruiter I understood that this what he got from the Team manager. I requested to postpone the interview a day or two and wished to talk to the Manager. While discussing with the Manager I understood that they were forming this team for an upcoming project more or less close to DevOps practice, but still not having any strong idea of what the skills to look for.
Like him there are lot of Managers having wrong assumption that DevOps is all about having expertise in tools like Chef, Ansbile, Puppet, CFEngine, Build & Release, etc. They end up recruiting a resource not even closer to DevOps skills. Then he asked me what skills should he look for in a resource if he want a serious DevOps Engineer. Also how can he categorize and identify the skills for intermediate, expert and lead resource. I took him a white board session and prepared this Chart. Even though I knew the contents of this chart long enough, this meeting gave me an opportunity to structure the thoughts. Though not professional, but can help the recruiters at basic level.
I also cautioned him that its really rare to get resource expert in all the areas and asked him to compromise on certain parts where he can provide in-house training or arrange external trainer for tools like Chef, Puppet, etc.
This chart inspired by an article – 10 DevOps Skills: Finding The Elusive DevOps Engineer by Joe Sanchez