Questioning the Legitimacy of DevOps Job Role
Hiring is on an upswing, and a quick LinkedIn search would throw up jobs aplenty from companies like Siemens, Boeing, Philips, KPMG India, Zeiss Group, Thomson Reuters, and Groww India etc. One job position that hits you up often is that of a ‘DevOps Engineer’. The job title might intrigue those not well-versed with the technology sector. One might even appreciate the widening range of opportunities (read: job roles) technology has enabled. Amazon Web Services define DevOps as a combination of cultural philosophies, practices, and tools that increase an organisation’s ability to deliver applications and services at a high velocity — evolving and improving products faster than organisations using traditional software development and infrastructure management processes. Edtech platforms like UpGrad and Educba, which offer dedicated courses on DevOps, list the prerequisites and the roles and responsibilities of DevOps engineers. Educba even reasons out why we need a DevOps engineer. According to Educba, DevOps engineers facilitate smooth transitioning from software development to deployment. Generally, the development team works on Windows to develop modules, testers use Linux or Mac, while the production team uses a different environment altogether. This might give rise to several issues after deployment. This is where DevOps engineers play their role in facilitating code execution in any environment. So, Is DevOps a legit job role? Sharing a LinkedIn job posting for DevOps engineers at Accenture, Anub Sinha, founder and CEO of Opscale, pointed out how HR teams at various organisations are executing a “buzzword strategy” by posting such hiring alerts. Uri Zaidenwerg, a senior solutions architect at Blink Ops, having worked as a DevOps engineer at multiple organisations, suggests point blank that firms need not hire for a post like this. Now, coming from a DevOps engineer himself, it sounds quite absurd. These opinions have created quite a stir in the job market. So, has technology enabled fresh job roles? Does the role of a DevOps engineer offer something new and unique? Or is it just a hoax that companies are using to sound up-to-date? Well, if one were to analyse the hiring alerts posted by these companies seeking DevOps engineers, they would wonder if these engineers offer any new skill sets at all. For instance, a recent job posting for Lead DevOps Engineer by Zeta Suite lists “software engineers with a bent towards operations engineering or vice versa” as one of the criteria for applicants. In the Accenture job posting that Sinha pointed at, the company was looking for qualifications more suited to an operations engineer from a decade ago, when ‘development’ and ‘operations’ functioned in silos. “Job descriptions on job boards for the mythical DevOps engineer primarily detail the skillsets of build and automation engineers, and nothing whatsoever about transforming organisations to adopt frictionless working practices,” wrote Gary Woodfine, Technical Director at threenine.co.uk, an independent software vendor specialising in IoT, Field Service and associated managed services. A majority of such job advertisements require nothing more than Linux, Security and Build with some experience in working with Agile teams. Why is there no need to hire a DevOps engineer? DevOps is essentially a belief, an ideology and cultural change that lies at an organisation’s core. Transitioning into this culture requires a change in mindset across IT, which cannot simply be accomplished by hiring people dedicated to a certain role. In fact, to incorporate the culture of DevOps, it is wise for companies to hire candidates across different job roles based on their problem-solving skills, efficiency and proficiency in automating manual processes. “DevOps is a set of practices enabling high-quality software delivery, not a role. Needs more of a cultural change, and you cannot solve it with one quick ‘DevOps Engineer’ hire,” comments Sinha. The culture of DevOps gives development teams more control over shipping code to production. Apparently, the people currently executing the DevOps engineer’s role are either developers involved in deployment and network operations or system administrators eager for scripting and coding and engaged in development to fine-tune testing and deployment. Thus, they are people who have pushed beyond their areas of expertise and have an acquired holistic view of the technical environments. According to Stepan Pushkarev, co-founder and CTO at Provectus, DevOps is not the skills of one person. Instead, everybody in a development team must know Linux, Docker, Docker Compose, Kubernetes, and Ansible, at least on a user level, and understand networking and deployment architecture. With the introduction of new tools like Kubernetes, ELK stack and cloud infrastructure solutions, now many responsibilities that so-called “DevOps engineers hitherto handle” can be delegated to the developers. Zaidenwerg believes that if DevOps tasks are delegated to people who are not well-versed in coding, they will not be able to comprehend the real issues with the code and address them. According to him, it is the developers’ responsibility to meet users’ demands and provide them with the desired user experience. Thus, hiring engineers committed to their client’s needs is wiser than hiring DevOps engineers. Wrapping up Donovan Brown, Microsoft DevOps Program Manager, says, “DevOps is the union of people, processes, and products to enable continuous delivery of value to our end users. You cannot buy DevOps and install it. DevOps is not just automation or infrastructure as code. DevOps is people following a process enabled by-products to deliver value to end-users.” Zaidenwerg opines that in the future, all developers will need to understand and practise DevOps. According to him, developers would be more efficient at their job if they understood what it takes to run their applications and how to make them secure and scalable. Acknowledging the role of DevOps engineer, Zaidenwerg says, “People are hiring DevOps engineers. And people are working as DevOps engineers, and that’s the title, so yes, DevOps engineer roles exist. The question is should it exist? I believe it should not. Well, because it defeats the purpose of DevOps. DevOps is about removing the silos between developers and operations and having a DevOps engineer do the operations. That’s just renaming the system administrator, not removing any of the silos.” “I believe that in a few years from today, we will have enough automation and third-party services in cloud automation to make the DevOps engineer role easy enough to be done by developers without them investing too much time in it,” he concludes.
Having a DevOps engineer wouldn’t remove any silos
DevOps as a combination of cultural philosophies, practices, and tools that increase an organisation's ability to deliver applications and services at a high velocity
[]
["Go", "AI", "docker", "Scala", "Git", "automation", "GAN", "DevOps", "R", "kubernetes"]
["AI", "kubernetes", "docker", "R", "Go", "Scala", "Git", "DevOps", "GAN", "automation"]
Zinnia loves writing and it is this love that has brought her to the field of tech journalism.