What is DevOps? A quick overview

The term ‘DevOps’ has become a buzzword of sorts, yet it’s unclear what it really is.

DevOps allows for a blurring of the lines between developers and the operations team. But what does that mean? What is DevOps, exactly?

Here’s a quick overview of all you need to know.

What is DevOps?

DevOps, a compound of ‘Development’ and ‘Operations’, is a working culture that unites the development team and the operations team.

Development team: the group responsible for creating software/products

Operations team: the group responsible for managing and maintaining the organisation

In other words, DevOps is an environment in which the development team and the operations team work together in the same space, rather than being separate branches of an organisation.

What is DevOps good for?

The immediate goal of melding development and operations teams together is to make the two departments run easier.

For the dev team, operations will be better able to understand development needs. So, they can therefore provide the tools and processes to make development easier.

For the operations team, meanwhile, a better understanding of dev output will mean that the applications produced will be easier to implement and maintain.

And what this then means in terms of the bigger picture is that the company can deliver apps and services smoothly, and at speed. In turn, this new-found speed leads to better served customers and a sharper competitive edge.

The history behind DevOps

Traditionally, the development team and the operations team would function completely separately. The development team would produce software, and then it was up to the operations team to implement, manage, and maintain it.

This led to a sense of dysfunction in software businesses. The two teams would have different goals, and often little interaction with each other. This made for siloed practices and a poor workplace atmosphere. And ultimately, it was the software —and the customers — that most suffered.

What is DevOps not?

DevOps does not mean that development has absorbed the role of the operations team. The operations team is still intact. Rather, it requires these two teams to communicate frequently, and to show empathy for the other team.

An organisation in which the operations have fallen completely to the development team, with no operations team in sight, is known as a ‘NoOps’ approach.

DevOps also isn’t a single person or even a single team. It’s a working culture in which the people that produce applications help the team charged with deploying them, maintaining them, and monitoring them.

DevOps in Agile?

DevOps is often found as part of an Agile methodology in software companies. This is because the quick evolution of software enabled by an agile approach fits well with DevOps needs. Development can quickly respond to issues raised by the operations team. And operations teams can implement new processes to help development in time for the next sprint.

TL;DR: What is DevOps?

So, what is DevOps? To summarise:

DevOps is a general term related to software delivery. It describes a culture wherein everything to do with software happens with ample collaboration between the development team and the operations team.

So, the development team make software that’s easy to run and maintain, and the operations team make it easy to make software that’s easy to run and maintain.

Useful links

The 4 software maintenance categories and what they mean for your users

ELI5: agile software development

Batman and agile development