Take a quick scan of IT job advertisement sites and you'll notice there isn’t much demand these days for programmers of Fortran, COBOL, or even C languages.
As businesses responded to the rising demand for graphical user interfaces in the nineties, object-oriented programming (OOP) became the dominant methodology, and languages such as Java, Delphi, and Visual Basic took over.
Those developers who did not keep up with technologies soon lost out to up-and-coming software engineering graduates who had even just a few months experience of OOP development.
Since then, the pace of business has only accelerated. Driven by the constant need to be one step ahead of the competition in a business world now dominated by cloud, organizations have put increasing pressure on their IT departments – demanding continually faster and more frequent software release cycles.
But the challenges facing developers and operations staff today extend far beyond keeping up with the latest technologies. They involve learning cross-discipline skillsets, and an entirely new working culture, as the emergence of the DevOps organization disrupts traditional IT roles.
To meet the pace of software changes smoothly and drive continuous delivery, businesses have recognized the need to closely integrate development and operations teams into a single unit – the DevOps paradigm.
This is not quite as simple as it sounds, not least due to the conflicting nature of these departmental roles. Culturally speaking, IT operations professionals seek organizational stability, whereas developers are primarily focused on change.
Also included in a DevOps organization are software testers whose motivation has traditionally been risk reduction.
Whether a DevOps team will succeed or not depends largely on these employees’ ability to collaborate across previous cultural boundaries.
When making hiring and team-building decisions, therefore, CIO’s will likely favor cross-functional IT professionals – although such recruitment will itself not be an easy task, considering most administrators don’t code and most developers don’t have an understanding of the underlying infrastructure.
IT pros wishing to thrive in the new DevOps environment must therefore look to broaden their technical, functional, and personal skill sets beyond what they have traditionally known or indeed been comfortable with.
While there is still no universally accepted definition of DevOps, and no formal career path, it is widely recognized that each role within the DevOps structure is collaborative, fast-paced, and experimental.
Not all programmers like constantly interacting with colleagues.
Not all managers can keep their teams working at the accelerated pace needed for a continuous delivery cycle.
And perfectionists may not enjoy the experimental aspect of a DevOps culture where teams work to incorporate security and quality assurance into the process. Nevertheless, these are the types of changes that all DevOps personnel need to accept for the model to succeed.
For those willing to rise to the challenge and embrace DevOps, the rewards extend beyond an enviable paycheck – currently among the highest in the IT field.
A successful career in DevOps, however, begins with learning a vast array of skills – with the goal of achieving a holistic view of one’s business and its software product development.
For these individuals the learning never stops. Indeed, while some consider the only constants in a DevOps career are change and uncertainty, many agree the main skill you will need to thrive in this environment is the desire to always be learning.
With the right approach and skill sets, you will enjoy a successful and rewarding career in DevOps, whether your current focus is development, testing, operations, automation, infrastructure, or platform.
Did you like this article? You might also be interested in...