DevOps Hiring: How to Build an Effective Team
These strategies for scaling DevOps teams effectively will help you ensure an open and collaborative culture
The core of DevOps is an agile team capable of building out new code and iterating quickly to improve it. Most teams start with a small cadre of DevOps professionals because they want to contain the experiment. When those team members find their rhythm, and the results start rolling out, DevOps hiring jumps to front of mind. But scaling DevOps teams isn’t as simple as it sounds. Businesses looking to hire face stiff competition for a limited pool of expert applicants. Not only that, but they need to ensure the level of collaboration in DevOps teams already in place remains extremely high.
If you’re looking to build out your DevOps team with some new hires, these strategies will help you find the right talent, nurture it, and build a winning roster of engineers.
Jump to a section…
Critical DevOps Hiring Considerations
Before you start growing your DevOps team, consider how you can make your current resources work more efficiently. For example, using automation can help you streamline many of your workflows and minimize human error in the process. This is key to DuploCloud’s No Code DevOps Automation platform. Click here to learn more about how DuploCloud automation can accelerate your deployment time by a factor of 10.
Time saved on fixing bugs caused by typos can then be reinvested, whether that’s generating new designs or focusing on design errors and other systematic causes of failure. Automation is particularly useful for testing, especially when combined with a CI/CD workflow with monitoring and feedback loops. These can help you catch failures early and ensure your automations work as intended.
Defining Roles and Responsibilities
The first step in DevOps hiring is to clearly define both the roles you’ve already filled and those for which you want to hire. DevOps requires highly specialized workers, so when it comes time to hire new ones, you need to know exactly what you’re looking for. Defining these roles will also make it easier for you to publish job postings and descriptions that precisely target the right applicants for the job. In addition to more obvious details like tools the ideal applicant should know how to use, include less frequently listed information like requirements for communication skills or how you intend to measure success for this role.
Constructing an Employee Pipeline
In the current, highly competitive DevOps hiring climate, getting job postings in front of the right engineers takes a bit of ingenuity. Reaching out to candidates directly is the most effective way to score an application, but it’s extremely difficult to do and time-intensive without a strong framework. Online and offline networking can help in this process by illuminating pockets of untapped talent. LinkedIn, Monster, Indeed, and private network groups on Slack and Discord can all help get your listing in front of great candidates. So, too, can referral programs. Engineers tend to know other engineers, and when correctly incentivized they’ll happily pass job postings along to colleagues. That means more and better applicants at a faster pace.
Assessing Candidate Abilities
Although DevOps hiring can take time, it’s essential teams take pains to avoid bad hires. Research shows mismatched hires can cost the business between $17,000 and $240,000. To keep those costs at bay, any effort at scaling DevOps teams should include a work sample test. These tests allow you to examine an applicant’s true skill and experience level with tools such as Docker or Kubernetes, and to get a sense of their problem-solving abilities. Whenever possible, these tests should have the following characteristics:
- Closely mirror actual work the applicant would perform on the job
- Follow a standardized template for all candidates
- Generate qualitative and quantitative data rather than a simple pass/fail result
- Be less than two hours long
Embracing Remote Work
According to the latest data, 32.6 million Americans will work from home by 2025. With remote work clearly here to stay, there are few reasons to shut your business off from the benefits of a distributed team. By allowing applicants from anywhere in the country — or even the world — you can expand your pool and raise your chances of finding the perfect fit. Allowing remote work also makes your role more competitive, as 98% of American workers want to work remotely at least some of the time.
If you open up applications to remote workers, be sure any applicants have or can be provided the tools and support they need to succeed. Operating a distributed team requires special attention toward communication and building a sense of camaraderie, much of which begins with trusting your team.
Prioritizing Soft Skills
Collaboration in DevOps teams is of the utmost importance. It will be tempting to focus solely on the coding during the interview process, but don’t neglect an exploration of a candidate’s communication skill set. A room full of geniuses does you little good if they can’t talk to each other. When scaling DevOps teams, pay special attention to the following soft skills, being mindful of both verbal and written communication:
- The ability to teach other engineers new info and skills
- The ability to clearly communicate questions and issues
- The ability to effectively test software prior to implementation
- The ability to perform critical planning
- The ability to give and receive feedback graciously
How to Optimize Performance When Scaling DevOps Teams
Fostering a Collaborative Culture
A DevOps team is only as good as its ability to communicate, both amongst themselves and with the larger organization. Team members obviously must be able to explain their ideas to one another clearly, but it’s management’s job to create an environment in which they’re encouraged to share and feel comfortable doing so. That means highlighting employee contributions, especially original ideas, whenever possible. It also means treating each failure as a chance to learn rather than a chance to punish. After all, the foundation of DevOps is a “move fast and break things” mentality; things are occasionally going to go wrong. It’s important to understand why they did and how to avoid it, and employees that trust leadership will be much more open about their mistakes. That leads to a better product overall.
How do you get employees to trust leadership? By being open, transparent, and communicative whenever possible. If leadership can be honest about its failures, employees will follow that example.
Promoting Continuous Learning
DevOps teams should always be learning. Investing in your team’s knowledge and skill growth will make them more efficient, effective, and creative in the long run. This makes them better at solving problems when they arise, faster in their day-to-day work, and happier in their roles, period. Why? Because they feel supported. Research shows that 80% of workers consider training important or very important in determining whether or not they will stay with a company. That shows how training can boost retention, but it can also have an effect on hiring — 80% of workers see continuous training as very or somewhat important when considering a new job opportunity.
Part of the DevOps puzzle is measuring how effectively your team is performing. There are a few key metrics DevOps leaders tend to use, and ones you may want to mention in your job listing, if they’re how you gauge success.
Lead Time for Changes
Lead time for changes measures the time between when new code is committed and when it’s in a compiled and deployed state. Essentially, it provides a read on how quickly your team is improving the product. Streamlining this process is key to the rapid deployment benefits of DevOps.
Change Failure Rate
The change failure rate tracks the percentage of updates that require fixes as soon as they’re deployed in production. This metric shows how often your team is pushing particularly bad code to deployment, but it’s less a measure of your team’s coding skills as it is a test of its testing. Thorough testing should keep the change failure rate low. A high one may call for revisiting those processes.
Deployment frequency measures how often the DevOps team pushes new code to the live product over a given period of time. Although a high deployment frequency is a sign of a humming team, it must be balanced against the change failure rate. It may go without saying, but frequent yet buggy updates are not a positive outcome.
Mean Time to Recovery (MTTR)
When your system goes down — whether via an interruption or a wider failure — mean time to recovery (MTTR) measures how long it takes to restore it. It’s effectively a reading of how effective your team’s monitoring and logging tools are. More abstractly, it can also provide a window into the ability of the development teams and the operations teams to collaborate. This is what DevOps aims to improve, so this metric can give a sense of how effectively the team works.
Reaching Scale with DuploCloud
As important as hiring is to scaling DevOps teams, it doesn’t have to be the first step in the process. In fact, it may behoove your business to improve internal efficiency before turning to new and expensive DevOps engineers. DuploCloud is here to help. By automatically generating configurations with our compliance-approved tools, you can accelerate infrastructure provisioning by 10x and lower costs by up to 75% versus the standard application lifecycle. Click here to schedule a demo and see how DuploCloud can help your business grow.