The concept of “DevOps,” of blending the two processes of software development and software operation, has moved mountains in the business world. Companies are scrambling to get on board with this innovative philosophy about how to move projects through a pipeline and promote streamlined, continuous software delivery.
In this dynamic environment, the DevOps manager is an important person in a corporate structure. (Learn more about DevOps in Developments in DevOps.)
What does a DevOps manager do? There's a short answer and a long answer. The short answer is that the DevOps manager simply promotes and implements DevOps as a philosophy – that the DevOps manager handles teams according to DevOps strategies and evangelizes DevOps to the outside community as well – for instance, to a customer base.
The long answer is that a DevOps manager can wear many hats. He or she may be involved in team management, but also in technical processes like testing, maintaining systems or even setting up contracts with business partners or vendors. From security to cost to automation to CI/CD, the DevOps manager has a real job with a variety of responsibilities and challenges.
We asked some of the experts a little more about what a DevOps manager might do from day to day.
Managing Teams and Cultures
One of the top-level challenges for nearly any DevOps manager is the people side of the business.
DevOps job ads will typically ask the DevOps manager to be responsible for directing teams of engineers and moving them toward DevOps implementation goals.
“The DevOps manager is responsible for ensuring that the different teams involved work together on common objectives towards quality and velocity of software delivery,” Jitendra Thethi at Aricent said. “A common challenge to overcome across all cases is the cultural change that needs to be brought about in the organization. This involves a commitment that is driven from the leadership level on to the entry level in empowering the team with the right tools and best practices.”
Thethi also pointed out how many DevOps managers are keenly involved in testing automation, saying that these professionals “use tools that replace or eliminate manual activities with automation.”
“The DevOps manager will measure and optimize on relevant DevOps matrices on a continuous basis … cycle time, frequency of builds, test coverage and testing cycle time, velocity of releases, and frequency of deployments,” Thethi said.
Opening Up Processes – Core DevOps Philosophies
All of this team management is in aid of getting some of the DevOps “magic” into company workflows.
In order to enhance the funnel or pipeline, DevOps managers have to find innovative ways to speed up or synchronize processes, making them more seamless. That often involves doing away with some of the restrictions in the hardware and software environment that keep companies from operating at 100 percent peak effectiveness. (Not sure if DevOps is right for your organization? Check out Why DevOps Is Important for Your IT Strategy.)
“There has been a general recognition in the industry over the last 5-10 years, that developing and deploying software using separate silos for developers and operations does not typically produce good results,” Nic Grange, CTO of Retriever Communications, explained. “The silos create a culture of throwing things over the fence and often blaming each other when something goes wrong. Early on in the DevOps movement, the focus was on breaking down those silos, so that developers and operations could have more empathy for each other and work better together.”
In enumerating some of the core tasks that a DevOps manager may be asked to complete, Grange mentioned having a highly automated CI/CD pipeline in order to deploy new software quickly, implementing different kinds of system design before working on a code base, and building developer skills in the operations arena.
All of this, he said, produces concrete benefits for the firm.
“Using the DevOps approach, a company should be able to deploy software more frequently, deliver it faster and make it more reliable,” Grange said. “This means that they should be able to shorten the time between when someone thinks of a new feature to when it is actually in the hands of a real user. It should also mean that the software is more reliable, because when it reaches production, it has already been designed to run there, and hence it's easier to operate and will be more resilient.”
Dealing with the Stack – DevOps Managers and System Administration
Some of the many other tasks that DevOps managers can be assigned are related to the technology stack, the specific hardware and software environment, and the risk management protocols that keep systems working well.
It's not enough to just innovate in agile practices – DevOps managers also have to plan for the future. These individuals may be asked to help with disaster recovery, or with help managing cloud costs. They may need to work specifically with vendor services like AWS, products like Microsoft Azure, or even container virtualization tools like Docker and Kubernetes. In some cases, they’ll have to resolve stack issues. Some companies may also have DevOps managers involved in crafting a service-level agreement for the company's own products and services, or evaluating those of outside vendors.
“The ideal DevOps manager has a team with broad skills spanning development, operations, security, infrastructure, and support, who can act as consultants to help holistic delivery teams embrace new tools and techniques,” Ian Buchanan, Developer Advocate at Atlassian, said. “More realistically, DevOps managers have a handful of (system administrators) and have the impossible responsibility to automate, integrate, and operate all the tools in the deployment pipeline.”
Buchanan further explained that, although some people feel like the DevOps manager is just an invented paradigm, practical application shows how important this role can be.
“It's hard to find a company that doesn't see the benefits of DevOps,” Buchanan said. “Few concepts (like this) offer the promise of magnitudes of improvement. Yet, it's hard to nail what a DevOps manager does because it's hard to define exactly what DevOps is. Early DevOps thought-leaders have claimed there ought to be no such thing as a DevOps team, let alone a DevOps manager. Yet, industry surveys and job postings both contradict the experts.”
Indeed, DevOps managers are doing big things in IT. They are helping to pave the way for the “next-gen” management practices that will keep churning out the newest and best technologies – as we enter the new era of machine learning and sentient computing.