If you mention that you are a DevOps engineer to a layperson, chances are you might get a glazed look. Mention that you are a DevOps guy to a developer, you might get a glance that borders on hero worship.
So, what have DevOps engineers done to elicit such a respectful reaction?
Good, nay, great DevOps engineers are the ultimate code chefs. These elite group of ninjas straddle the two worlds of operations and software development. Fantastic communicators and collaborators, they have earned the respect of all those in I.T.
Unfortunately, defining what DevOps engineers do is constantly changing. Reams of virtual ink have been spilled over this in many blogs and discussion forums.
So, what exactly are the skill sets required?
After extensive discussions with organizations, developers and even on Reddit(!) we’ve come up with this sample “JD”:
Good coding and scripting ability e.g. PHP scripting, Python scripting
Ability to stitch together and use a wide variety of open source tools
Experience with IT operations
Experience with data management
Knowledge of testing and automation tools e.g. Jenkins, Chef
Experience with version control systems e.g. Git, SVN
These skills point to an interesting fact. The old ways of doing things do NOT work in the world of the interwebs. Software must work seamlessly across a diverse set of operating systems and platforms. Also, websites and products must be as relatively bug-free as possible. If a company website or product crashes, it could cost millions in profit.
So testing and deployment are more frequently done. This means that the ops people and software developers must work hand in hand together.
Bridging this gap is the job of the DevOps engineer.
Who becomes a DevOps engineer?
The road to elite-dom is not easy. It’s not simply a matter of pushing people who code over the wall into operations.
To begin with, one must shore up their coding skills. Get familiar with automation tools. And don’t forget about the soft skills too! As a DevOps engineer, excellent ability to coordinate, collaborate and communicate across teams is a MUST.
Essentially, a DevOps engineer is one who pushes past his or her defined sphere of proficiency. Battle tested but not worn, the DevOps engineer combines the skills of a business analyst along with the technical skills of the coder.
Why should businesses hire DevOps people?
Businesses following a DevOps strategy are the high functioning savants of the business world. Companies with frequent deployments, or releases, need a DevOps approach. Problems are resolved more quickly and efficiently. Less debugging and code maintenance required. As a result, more companies are jumping onto the DevOps bandwagon. The need for a DevOps guru has never been higher!
Want to become a part of the elite force of a great business team? Take part in our challenges that help you show off your DevOps skills, and walk away with cool job offers.