If you've ever considered working in DevOps, now might be a good time to pursue that option. Over the past few years, demand for IT professionals with experience in DevOps has skyrocketed. At the time of writing, a search for U.S. job postings that include the word "DevOps" turned up 5,733 jobs on Dice, 26,168 on Indeed.com and 65,727 on LinkedIn.
The 2019 Robert Half Technology Salary Guide said that "DevOps Engineer" was one of the hardest IT positions to staff. And that difficulty appears to be driving up wages. The report noted that DevOps engineer salaries range between $90,250 and $178,250, with a median of $110,500.
In addition, the DevOps trend seems unlikely to end anytime soon. The Interop and InformationWeek 2018 State of DevOps report found that 84% of organizations had either already implemented DevOps or planned to do so. That was up from 64% of respondents who said the same thing in 2017, and given the continued buzz around the approach, the 2019 numbers will probably be even higher.
If you already have a job in IT but haven't yet worked in a DevOps-related position, the transition to a DevOps job shouldn't be difficult. In fact, if you are already a developer or already work in IT operations, "working in DevOps" might simply mean doing the job you've already been doing but at a company that has embraced DevOps principles and practices. However, this change will require you to rethink the way you've always done things and adopt a new mindset. On the other hand, you might be interested in becoming a DevOps engineer or DevOps manager, which could require upgrading some of your skills if you don't have previous DevOps experience.
So how do you get into a DevOps job from your current position? What follows are seven steps you can take to prepare for a career in DevOps.
1. Learn the DevOps Philosophy
If there's one thing that everyone in the DevOps movement agrees on, it's that DevOps requires more than just deploying some new technology -- it requires a unique mindset. DevOps is all about applying the principles of agile development to IT operations. It requires developers and operations teams to work together closely, and it usually involves continuous delivery, cloud-based infrastructure and heavy reliance on automation.
If you aren't sure what the DevOps philosophy is all about, check out the DevOps section of InformationWeek along with a recently created DevOps guide. You might also want to check out DevOps.com or the book The Phoenix Project. Several vendors also have website pages that offer a good introduction to DevOps.
2. Master the Foundational Technical Skills
You can't work in DevOps without some baseline technical knowledge. First, you absolutely need some experience with Linux. Most DevOps organizations are running Linux servers, so you must understand the open source operating system and be comfortable working from the command line.
Second, you need to have a solid grasp on the basics of cloud computing. Amazon Web Services, Microsoft Azure, and Google Cloud all have excellent tutorials that can help you get up to speed if this is a new area for you.
Third, you need some experience with writing code, more specifically with a scripting language. If you don't already know a scripting language, most experts recommend learning Python.
3. Gain Experience with DevOps Tools
While DevOps is about more than just tools, most organizations do rely on some DevOps-related tools. You should absolutely gain some experience with Git and GitHub if you don't have it already because most DevOps organizations use these tools to manage their codebases.
You should also get familiar with container technologies, specifically Kubernetes and/or Docker.
Once you have those skills in your arsenal, you should consider learning some of the more popular DevOps solutions and automation tools. Different enterprises use different tools, so if you want to target a specific employer, it's a good idea to learn the tools that company has deployed. If not, you can choose from options like Puppet, Chef, Jenkins, Ansible, and many others. XebiaLabs has a Periodic Table of DevOps Tools that lists nearly all the most popular ones.
4. Work on Your Soft Skills
It bears repeating again that DevOps is about more than just technology. You're also going to need to get along with other people. If that's not your strong suit, consider some soft skills training. Even the most introverted people can learn how to collaborate, how to make an effective presentation, how to write clearly and persuasively and, in general, how to do a better job interacting with others. Good technical skills aren't enough to continue advancing in a DevOps career. If you don't want to stall at your current level, make the investment in improving your soft skills.
5. Attend DevOps Events
Those soft skills can come in handy for networking at DevOps conferences, meetups and other events. These offer excellent opportunities for improving your skills, learning from colleagues and hearing about job opportunities. The number of DevOps conferences continues to proliferate, but some you might consider include Interop ITX, DevOps Days, DevOps Enterprise Summit, DevOps World and others. Many of these events also coincide with other training opportunities.
6. Consider Formal Training and Certification
Getting some formal training in DevOps, possibly including a certification, can be a good way to demonstrate to potential employers that you have the skills to do a DevOps job. A quick search for DevOps training opportunities will bring up dozens of different options. Some online courses are very low-cost or even free. In-person training tends to cost a little more but is also more likely to include a respectable certification. Some employers think more highly of training and certifications than others do but having something like this on your resume certainly won't hurt and may help you get better at your job.
You will never completely master DevOps because the field is constantly changing. If you want to stay up to date, you will need to perpetually work on improving your knowledge and skills. In the same way that DevOps works to continually improve your systems, you will also need to continually improve yourself. The good news is that if you are up for this kind of challenge, the potential rewards in terms of salary and career opportunities are high -- and growing.Cynthia Harvey is a freelance writer and editor based in the Detroit area. She has been covering the technology industry for more than fifteen years. View Full Bio