The lack of skilled IT workers is hurting the deployment of emerging technology, according to a new survey from Gartner. In areas from cloud to cybersecurity, this crisis is expected to last for years to come.
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. 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.
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.
DevOps philosophy’s base definition
is: DevOps is the way in which a
technology organization embeds itself in a business to the benefit of that
business.
At its simplest, DevOps is about removing the barriers
between two traditionally siloed teams, development and operations. In some
organizations, there may not even be separate development and operations teams;
engineers may do both. With DevOps, the two teams work together to optimize
both the productivity of developers and the reliability of operations.
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.
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.
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.
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.
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.
Share your comments on this Article:(0)