Is DevOps a Good Career?
DevOps expertise is in high demand. Job postings with "DevOps" in a title or keyword are sprouting up everywhere. DevOps practitioners are among the highest paid people in IT, and it's the number one most difficult tech job to fill.
But how is DevOps as a career path? For that matter, is it a career at all? Our DevOps courses flesh out these nuances in greater detail. DevOps has been known as a movement, toolset, and method. Others argue that "DevOps" in a job title is counterproductive to its aims. So, let's talk about what DevOps is and whether it's a good career path.
DevOps: The Movement
The snarky might say a DevOps engineer is a "server guy" with delusions of grandeur, someone who's rebranded himself/herself but mostly just automates deployments.
But DevOps is much more than that. As a movement, DevOps intends to revolutionize software development and delivery, tackling the gap between software that is "development complete" versus being "in production, stable, and making revenue." But, failing, late, underperforming, and/or unprofitable projects are a merely symptoms of the problem.
The Problems that DevOps Fixes
Much of the software industry labors under a fear of change. People expect that software products, and the platforms they run on, are fragile. New software won't behave correctly in its intended environment, under load.
Working under pressure, teams handling different aspects of the problem — development, quality assurance, operations, etc. — don't know and don't trust each other. Components are thrown over the transom with a sigh of relief. Each team assumes that the other guys' piece of the solution is likely to be at fault in any misbehavior.
In response to all this, organizations institute change management and quality assurance, and new features and fixes are slow to see the light of day.
DevOps addresses this with a changed attitude combined with technology. Its tooling and practices aim for a culture shift: A changed mindset about how people work together, encouraging communication, collaboration, and teamwork.
DevOps: The Career
DevOps does involve automating software delivery as well as infrastructure updates, so there are particular tools and services involved. But most significantly DevOps aims to transform how the parts of a software organization work together, by sitting between development, quality assurance, and operations and applying a mix of automation tooling and collaboration practices.
By bridging traditional silos with automation and collaboration, the organization can work cooperatively to construct, test, and release updates rapidly and reliably. Both software products and infrastructure updates can be released with far less risk and uncertainty, making the organization more responsive to customers.
Is DevOps a Good Career?
DevOps is only a few years old. Many DevOps practitioners started out as sysadmin coders or multilingual programmers with some infrastructure management experience. The common trait is the ability to move between development, testing, and system administration. You can easily get started in DevOps as a developer, sysadmin, DBA, QA, or elsewhere, as long as you're willing to take on learning new tools and technologies and get thoroughly involved in what the other teams in your organization are doing.
A career in DevOps calls for curiosity, and a willingness to cross-train outside the comfort zone and assumptions of your current role. Being a successful bridge across teams requires a big-picture understanding of the business. The wide (versus deep) approach will help to gain hands-on expertise in different roles and environments. You'll be constantly learning new technologies and skills that can be applied elsewhere, so DevOps will keep you from getting pigeonholed into one path.
Your resume will look a little more T-shaped than the typical sysadmin, developer, or QA engineer, but that's exactly what you want.
DevOps Isn't for Everyone
DevOps is more than what your resume can effectively communicate, namely the so-called soft skills. The DevOps practitioner personally acts as a trusted bridge between development, operations, and QA. This means having your feet in multiple camps, and that means you should be willing to spend time with the other teams.
You'll first need to get to know what everyone around you contributes. You then need to get to know your way around their work, hopefully contribute to it, and inevitably respond to their crises quickly.
DevOps calls for communication skills and empathy — moving beyond the parochial viewpoint and attitudes of your own original role, being open to alternate points of view, and working to integrate different mindsets. A DevOps career requires learning to be a skilled communicator, perhaps most especially becoming a skilled listener.
DevOps also calls for a willingness to push for positive change. As a successful DevOps practitioner, you must confront traditional habits, barriers, and rivalries in your organization. Are you willing to be the glue, the bridge-builder, a champion of collaboration and communication?
If not, then DevOps remains a good career, but it might not be a good career for you.
A DevOps practitioner may be called a system engineer, automation architect, automation engineer, release manager, integration specialist, developer-tester, security engineer, or DevOps Architect. There are many career opportunities for applying DevOps expertise, and this young field will continue to evolve with the software industry.
DevOps will be a high-impact, challenging, and critical role for the next many years. If this movement and career path excite you, it's time to explore DevOps.