As the workplace we once knew changed over the past two years, so did the way DevOps teams worked.
While the initial goal of DevOps was to facilitate greater collaboration between developers and operations teams, a lot of recent focus has been on how DevOps teams can measure the value they are providing to the business. New trends like value stream management and BizOps have begun to gain popularity as a means to this end.
Another interesting trend is the declaration by GitLab that we are now in the fourth wave of DevOps. According to GitLab, the four phases of DevOps include:
- Silo DevOps, where each team selects their own tools
- Fragmented DevOps, where organizations utilize the same set of tools for different life cycle stages
- DIY DevOps, where teams use toolchains built with parts not designed to work together
- Platform DevOps, where tools have advanced capabilities that allow developers to build software with velocity, trust, and visibility
“There’s an old expression, ‘If you want to go fast, go alone and if you want to go far, go together,’” said Sid Sijbrandij, co-founder and CEO of GitLab, during his keynote at GitLab Commit earlier this year.
However, going together often means that developers are asked to do things they aren’t trained to do — involving areas like testing, security, and governance — and organizations have been slow to actually provide the training needed to learn those skills. On top of this, traditional IT operations have been sidelined and precautions they would take before releasing an application are now only being dealt with after the fact. This leads DevOps to feel like “The Bad Place,” and open up organizations to risks.
And even though today more and more departments are coexisting with each other and collaborating, a lot of silos still exist. So rather than DevOps breaking down silos as it originally intended, more tend to get created.
One potential solution to some of these problems is to take some of that burden off untrained developers and onto specialists. It won’t solve all of DevOps’ current problems, but it could be a start.
Another struggle with DevOps is that though a lot of new developers come into the industry fresh out of college programs, a lot of universities still aren’t incorporating DevOps into their curriculums. In an episode of the What the Dev? podcast, Christina Hupy, senior education program manager at GitLab said: “I would say that most college graduates who are studying computer science and learning coding come out of their degree program with a very solid grasp of the fundamentals of coding, usually with a specific language or two. They learn how to build code, how to run code, how to compile it, and do some testing. Generally speaking we find that the DevOps process itself is not being taught.”
Some courses are available to help developers fill in those gaps in their knowledge. Recently, the Linux Foundation and Continuous Delivery Foundation partnered to provide the DevOps Bootcamp. The bootcamp provides an overview of DevOps and Site Reliability Engineering, goes into detail about specific DevOps toolsets, and explains more specific topics such as GitOps and DevSecOps.
In addition, to help companies assess how well they’re doing at DevOps compared to similar organizations, this year the DevOps Institute announced its Assessment of DevOps Capabilities (ADOC), which does take into account the human aspect of DevOps. It looks at five different areas: human aspects, process and frameworks, functional composition, intelligent automation, and technology ecosystems.