tiero - Fotolia
DevOps jobs command some pretty decent salaries. DevOps skills are in demand. And, yet, there are few to zero university classes, training programs or certifications out there for engineers looking to follow a DevOps career path.
This begs the questions: How do you actually prepare for a DevOps career? What do you do to land a DevOps job?
The DevOps career credential challenge
The scarcity of formal training programs in DevOps is unusual.
Traditionally, it has been easy to find training and certification for IT jobs. If you want to be a programmer, you go to college and major in computer science (CS) -- or teach yourself programming and apply to startups that don't care about credentials.
If you want to do sysadmin work, majoring in computer science is also a good place to start. Alternatively, or in addition to getting a CS degree, you could gain certifications in technologies like Linux, which are offered by a number of organizations -- the Linux Foundation and the Linux Professional Institute are just a couple of examples. If you're interested in database administration, you also have lots of certification options.
Yet, when it comes to formal training in DevOps, training and certification offerings are few and far between.
I'm not aware of any institution of higher learning that offers a degree in DevOps, or even courses in it. There are a handful of DevOps certificate programs and tests available, but most are from organizations that don't have the DevOps career stature of those that offer certificates in technologies like Linux.
In other cases, you can become DevOps-certified for specific platforms, like Amazon Web Services, but not for DevOps as a whole.
Start developing DevOps skills
What does one actually do, then, to prepare for a DevOps career?
Obviously, a college degree in computer science, electrical engineering or a similar field is a good place to start. While it might not provide everything you need to walk into a DevOps engineer position after graduation, a technical foundation is a good place to start with a DevOps career.
This is especially true if you choose to take courses that cover a broad set of areas -- like history or philosophy -- rather than focusing just on programming or just on operating systems, for example.
You can also take advantage of massively open online courses (MOOCs) offered in DevOps. Coursera, Udacity and EdX all offer DevOps courses. Completion of a MOOC may not impress employers as much as holding a college degree, but it can help you stand apart. It will also give you some DevOps training that is oriented toward real-world applications, as opposed to the more theoretical instruction you find in colleges.
Three companies went out and searched for a DevOps engineer. What they found is illustrative of the often nebulous identity of DevOps and how it works when put into practice.
Public demonstration of DevOps skills
If you've written a tool that solves a software management task, make sure it's on GitHub. If you have insightful thoughts to share about how to best coordinate software delivery across diverse teams, write a blog post to share them. Be ready to demonstrate your skills and achievements.
Your code or article doesn't have to go viral in order to help you advance in your DevOps career (though that's even better, of course). As long as you and your work are publicly available, it serves as a passive indicator of your DevOps expertise -- as well as your commitment to contributing to the DevOps community -- which is always a good thing.
Following the DevOps conversation
Last, but not least, be sure to stay up to date with the DevOps conversation.
The way people talk about DevOps now is not the same as it was a decade ago. DevOps today is broader -- it involves not just developers and IT ops, but also quality assurance teams, security engineers and more. Just as DevOps is all about continuous improvement, your drive for awareness should be, too.
Starting a DevOps career is more difficult than landing a more traditional tech job. But it can be done if you find and use educational resources in the right way and immerse yourself in the DevOps community.