Hiring the right site reliability engineer (SRE) candidates is essential to strengthening your DevOps culture. SREs play an important role in your organization’s development efforts. When recruiting for these DevOps positions, it’s essential to consider both soft and hard skills. By focusing on both, you’ll end up with a more well-rounded candidate that can contribute immensely to your DevOps foundation.
What is an SRE?
The role of SRE originated from Google in 2003. Its unofficial description was “what happens when a software engineer is tasked with what used to be called operations.”
What does that mean exactly? In broad terms, you could consider it a liaison between development and operations. Development and operations once sat in silo (and still do in some enterprises) until the emergence of the DevOps culture. It’s not practical for these teams not to collaborate and interact. SREs are the bridge between the two.
An SRE is a more proactive form of quality assurance (QA). SREs apply a software engineering approach to system administration. They often have a long list of responsibilities, which may include:
- Defining system availability thresholds: SREs work with other engineers to define targets and metrics around uptime and service level objectives (SLOs).
- Automating reliability: SREs are automating experts who use tools to eliminate manual reprogramming, saving time and money.
- Release engineering: Defining the necessary processes and practices for consistent and reliable software deployments.
- Responding to alerts and incidents: SREs play a key role when something breaks and are often the first to know because they monitor for such incidents.
- Capacity planning: To meet changing demands, SREs discern the production capacity necessary to do so.
- Promoting observability: Using application performance monitoring (APM) tools to have visibility on all aspects of the system pipeline.
SREs also have a hand in improving latency, performance, and efficiency. In looking at what SREs themselves say about what they do, the 2020 SRE Report finds that 25 percent said dev-related activities (developing apps and writing software), while 75 percent said ops activities, including incident response and reliability monitoring.
Essential Hard Skills for SRE Candidates
With such a variety of responsibilities, SRE candidates must be versatile. Hard skills, which represent their technical aptitude, are always evolving. There are some foundational elements that you’ll want to recruit for to find the most optimal new SRE hire.
- Systems and/or software engineering experience: Having a background in engineering will be essential because SREs are still part of the development world.
- Infrastructure automation: SREs should have relevant and robust automation experience because it’s critical for this role to eliminate as much manual work as possible.
- Software-centric approaches to ensuring reliability and performance: Reliability and performance are the two most important aspects for an SRE, and having the ability to understand this from a software perspective is extremely valuable.
- Proficiency in coding: SREs should have a solid coding background with experience with Python, Java or GoLang, at a minimum.
- Understanding of complex architectures: The structures of organizations are changing, so SREs should have exposure to microservices, cluster management, containers, and the cloud.
Soft Skills Have Value, Too
An SRE candidate with all the right hard skills may not be the complete package. Hard skills can get someone in the door, but soft skills will help you ensure that they will thrive in a DevOps environment.
When you’re comparing candidates with similar experience, seek out these soft skills:
- Problem-solving capabilities: SREs need to be creative thinkers because they are solving complex problems. Some logic-focused professionals can’t really master the abstract thought of “what if.” You should focus on finding someone that does more than think outside the box. Find someone who doesn’t even see the box.
- Team-oriented: SRE is part of the development and operations team and must interact with other stakeholders. Seeking out someone that appreciates collaboration and working together is crucial.
- Excellent communicator: Working with both technical and non-technical parties means they need to talk to both. They may play the role of “translator” from technical language to business language and vice versa. The ability to speak both plainly and in a highly technical manner is imperative for any SRE.
- Comfortable with being change agents: SREs live a life of constant change and frequent releases, so they should be change managers. They cannot be fearful of change or afraid to make a mistake. Fearlessness is the kind of mindset you want your SRE to have.
- Curious in nature: SREs are like investigators and have to understand how things work to improve them. That requires an inquisitive mind that doesn’t just scratch the surface to find a solution.
- Continuous improvement mindset: SREs “never” complete a job because releases will continue to happen. When they find failures, they should see these as opportunities for improvement, which is core to a DevOps culture.
Every role, no matter how technical, needs a balance of hard and soft skills. If you can find an SRE candidate who checks off most of the qualities, you’ll likely find a successful hire.
Hard skills ensure that the candidate has the experience and knowledge to master the technical aspects. Soft skills are essential because this role isn’t on an island just working away. SREs must interact, communicate, and remain creative. They are part of the DevOps team with much work to do, so you need them to perform from a place of possessing both sets of skills.
Looking for a Talented SRE? We Can Help
If your organization is seeking an SRE candidate, then you’re not alone. More than 46 percent of technical teams have a dedicated SRE, per the 2020 SRE Report.
It’s a competitive field with talent that is learning to be more flexible every day. We have years of experience, specifically in recruiting SREs for DevOps organizations.
Contact us today to work on your recruitment plan.