Five Must-Have Keys for Building Effective DevOps Teams

February 13, 2018


Ask IT professionals what makes for a great DevOps team and you will be slammed by a tsunami of answers. Then ask them to go about building such a team and get ready for a flood. Yet building such teams is the task facing more and more American corporations, and getting it wrong – well, the costs in delayed or canceled projects alone can be massive.

DevOps teams are not simply IT teams moved into the basement and given a new task. They require careful assembly and frequently a mixture of full-time and part-time roles, both within and outside a company.

Here’s how you build them and make sure they do the job:

1. Hire the Right Leaders First

DevOps teams need leaders who understand DevOps. The concepts underpinning DevOps have been around for long enough now that there are enough seasoned professionals out there with experience building and managing successful teams. The best place to start is with your leader.

A DevOps leader sets the tone and culture of the team to be built and managed. Companies sometimes make the mistake of simply picking an individual within their senior IT management team and tasking them with complex DevOps supervisory jobs. This can work, if they are lucky. But it seems short-sighted to risk an entire project on luck.

There really is only a small pool of talented individuals with the kinds of skills, talent and track record to manage effective DevOps, and they are in high demand. An estimated 60% of hiring managers have vacancies in this area. The shortage boils down to a lack of skills, experience and education within the DevOps role.

Many senior engineers are already on great packages and not in the mood to move. Importing experienced personnel from abroad can be the only alternative, but here a company must be confident that foreign personnel can manage American teams of engineers. Like a football team hiring its franchise quarterback, time, money and energy needs to be dedicated to this hire.

2. Think Outside the Box

For the rest of the team, it pays not to rely too heavily on your HR department, unless you are a technology company. The recruiting of DevOps professionals should be managed by the DevOps leaders in conjunction with HR.

Teams can often be partly composed of IT employees who may need to be assigned on a temporary basis from other roles – important if the DevOps team is to understand the objectives and demands faced by the software it is developing.

As with DevOps leadership, however, the market for good DevOps teams is fiercely contested. Some areas of the country will prove more fruitful for local recruitment (e.g. California, North Carolina, New York), but companies seeking to build DevOps teams in more remote locations will need to pay above the going rate and include substantial resettlement packages.

Many companies are waking up to the need for the development of cloud-based strategies and are in the market for DevOps teams. The demand is only likely to increase; hence it is best not to put off projects for too long.

Use of part-time or remotely located personnel should not be ruled out. If the required skills are not present locally, it is easily possible to bring developers in on a contract or consulting basis. In this context, foreign employees can also be more readily called on but it is best to integrate individuals already known to the company or with proven credentials and reliable references.

3. Make Use of Automation

One of the most frequently-cited reasons for DevOps projects overshooting time and/or cost parameters, or failing altogether, is a lack of automation. Having advised companies to pay for the right people, at the same time we would be remiss not to mention the various ways that automation can be used to save time and money. Many more routine tasks within the DevOps process can already be automated, allowing teams to focus on the work where their skills are best leveraged.

Typical areas where automation can save teams time and money: developing and testing code, the deployment of test infrastructure, end-to- end testing and collection of metrics.

Ultimately, the ability to reduce time-to- market can be directly correlated to the speed at which your DevOps team can obtain feedback. Automation can play a big role here too, and companies should assess automation requirements at as early a stage in the project as possible.

Apart from increasing the efficiency of teams, automation can also keep them small. Some projects overshoot their budgets because there are too many bodies involved. Many of the management principles associated with DevOps, like Agile, are focused on making the most of teams. But investing in automation can keep headcount down by taking most of the time-consuming tasks off the table for humans.

4. Keep Training

The need for DevOps teams is not about to disappear. There may be a temptation within your company to see a DevOps project as a temporary requirement, but dividends can be earned if at least a portion of a DevOps team is retained in-house. It may also be possible to start training existing IT staff, helping them to achieve proper certifications as part of their work.

For example, Amazon Web Services (AWS) already offers a DevOps engineer certification course, which comes with multi-day training courses and a three-hour exam. Similar courses are available from the likes of Red Hat or Google. All are demanding. The time involved in training for DevOps certification is not to be underestimated, but it can pay off if, as a company, you expect to have an ongoing need for DevOps teams.

Training personnel with experience of your business also means they will have a much better understanding of the day-to- day needs of the other people working in your company, which will give them an edge over external developers.

There are already dozens of DevOps qualifications advertised, but the best are considered to be those offered by software and cloud vendors like AWS or Microsoft.

Also, note that DevOps never stands still. The technology is changing, but so are the management theories that underpin the ways developers should work together. Just because your team members are all certified does not mean that you should stint on educating them in future. If there is one area where continuous learning is critical, it is DevOps.

5. Appoint Internal Champions

A critical friction point for DevOps teams can be how they interact with the rest of the company. It sometimes can be difficult for software developers to engage effectively with other wings of a business. Senior management may seek to ring-fence them away from the rest of the business, including executives eventually tasked with bringing the new software to the workers who will use it.

DevOps projects frequently require employees from the rest of the company to provide effective feedback, but the team may not be equipped to properly engage with colleagues to obtain this feedback.

Internal champions are not an intrinsic element of a DevOps team, but their role is important. They should have a vested interest in seeing new software and technology deployed within the business, and act as ambassadors for the DevOps team within the company. Their task should be to help smooth obstacles within the company that the DevOps team may not have the time or resources to manage.

Such individuals typically are found in senior management, have a strong understanding of the areas of the business impacted by the project and with sufficient understanding of technology to develop a high-level view they can communicate to employees. Charisma can also be an asset here.

Recruiting a DevOps team can seem challenging for a company starting the effort from scratch, but a good first point is simply scoping out the project, ideally with input from IT and senior management, and then assessing the likely personnel requirements as part of the project planning process.

A seasoned DevOps professional should be involved at this stage, before the hiring process begins, their realistic idea of what will be needed could make all the difference.

Cormac Bracken
Cormac at VitalBriefing is a full stack web platform developer and programmer, for many years building and running systems, applications and products in data processing, disaster recovery, virtualization and programming. In his own words, he's old enough to have tackled the Y2K bug but young enough to keep on top of the cutting-edge of cyber and data security. He also works with myriad programming and OS issues, as well as software and mobile development for apps and web.
Take me to Community
Do you still have questions? Head over to the Spiceworks Community to find answers.