This content is part of the Essential Guide: How to create a successful DevOps organizational structure
Get started Bring yourself up to speed with our introductory content.

What are the key DevOps roles in an enterprise?

The DevOps model is taking off as cloud adoption grows. But what exactly are the key responsibilities of a DevOps team in the enterprise?

DevOps came into vogue when cloud computing took off, mostly because traditional system administrators, or IT operations staff, needed to learn programming skills in order to manage what was previously physical hardware.

To manage virtual servers, you need to know how to write code to handle events, such as a spike in user traffic, and have that code automatically manage the scaling of your infrastructure. Unless you're working in a data center, you probably don't need to work with physical hardware anymore, and so your skills need to adapt to duties that mostly deal with API calls or consoles.

Still, those with DevOps roles and responsibilities need to be able to configure a network, install and manage system packages and create VPNs. They still need to understand TCP traffic and how to configure firewalls. But, they also need to be able to develop software to manage a lot of those responsibilities.

Building a self-service IT portal helps developers create applications, request servers and access networks. Organizations need to know what all of those requests amount to in the end, and should help software developers determine exactly what they need to make their services run in production.

Understanding the different DevOps roles

A DevOps team should understand the different instance classes and sizes, and help developers determine which would best run their applications without costing more than required. Create a log-aggregation strategy, determine what the logs mean and decide where to route events for fixing. A DevOps worker in a cloud computing environment is there to fight fires and dispatch reinforcements to where they are needed most.

Organizations should assign specific DevOps roles and responsibilities. Netflix, for example, looks for talented operators who have picked up programming on the side. It's a very specific need: someone who understands the lower-level sys admin and networking functions and also knows how to write some code. But Netflix doesn't want someone who just writes code; it wants someone who can help its developers succeed.

DevOps team members are also the first responders when something goes wrong. They diagnose a problem and determine if it needs to be corrected immediately. If it does, they'll determine whether it's something they can quickly fix by rebooting a server or repairing a configuration. Or, if it's an issue with someone's software, they will alert the team responsible for that code.

Personnel in DevOps roles help ensure the system is brought back online, or reroute services away from the broken systems, if possible.

This isn't to say DevOps teams will do everything. They make sure the system is fixed as quickly as possible and with minimal harm to clients. If that means rolling back a change that's just been released, they can do that -- but they aren't going to dig into why that recent change broke.

Next Steps

Looking to master DevOps? Here are some resources and tutorials to introduce you to the most important DevOps tools being used by the industry today.

Dig Deeper on Cloud application development