Site reliability engineers work to keep systems reliable from development to operation. They get involved in coding, testing, system administration, incident response, and even customer support. It is a very expansive role that requires a varied set of skills and knowledge and is commonly fulfilled by individuals coming from many different backgrounds.
According to Indeed, a site reliability engineer’s salary is on average $131k in the US and £74k in the UK. In other words, they are highly valued, and demand is rising all the time.
So, which is the best path to become a site reliability engineer? This is the question we will explore in this article.
What is Site Reliability Engineering?
Site Reliability Engineering (SRE) is the practice of building and maintaining highly scalable and reliable software systems. It is a broad discipline that requires skills in numerous areas, such as software and systems engineering, networking, databases, operating systems, security, and troubleshooting.
Because it is such a wide-ranging discipline, different companies tend to adopt their own approaches to it. One organization may have its team of SREs doing a lot of programming, while another may need them to act more as system analysts, and so on.
Speaking generally, SREs work to reduce toil (manual, repetitive tasks) and human error through implementing automation. They will also take shifts in the on-call rotation to fix issues as they arise and ensure the service remains available to users. SREs are also usually responsible for analyzing incidents after they occur to understand their root cause and take action to prevent them from happening again.
How to become a Site Reliability Engineer
Site reliability engineers come from different backgrounds and tend to specialize in one or two areas touched by SRE. This means that the best path to becoming an SRE practitioner varies and largely depends on your current knowledge, experience, and skills.
Like with any career, you are at the mercy of the opportunities that are available in the job market and that are offered to you. For example, you may graduate in computer science or programming and land an internship on an SRE team soon afterward. This is a very straightforward route and a pretty great one. However, it may not be a reality for everyone. Some people may attend a coding boot camp, take on freelance jobs, and later find a full-time job in system administration before moving on to an operations role and then finally joining an SRE team.
Regardless of your individual experiences and opportunities, one thing is certain: as an SRE, you will need a varied skill set and an eagerness to learn – constantly.
So, let’s break down the main steps that generally make up the best path to a career in Site Reliability Engineering.
Find out what skills you need
Explore the job opportunities currently available for SREs and find out what skills you are missing. The requirements typically include knowledge of programming, version control, virtualization, and CI/CD pipelines. SREs should also know how to design highly scalable systems, automate software builds and tests, monitor systems (and make them as observable as possible), and understand the use of containers and microservices in systems architecture. You may not need to acquire all these skills, but you should master at least some of them.
Explore job listings that interest you and compare them to the skills you already have. Then, focus on the next key skill you can develop to get closer to meeting the most important prerequisites. In addition to specific skills, some companies may require experience in certain areas, while others may provide training to fill any knowledge gaps and help you get to the necessary level.
Learn those skills
Once you have confirmed what skills will make you more prepared for your first SRE job, it’s time to start learning them! There is no right or wrong way of doing this, so you should find a way that works best for you. For example, if you need to learn to program, you may take online classes, go to a boot camp, or even choose to get a university degree in Computer Science.
You may need to have other jobs before you become an SRE, and that can be a good thing. An efficient strategy you can use is to learn one or two skills that will get you closer to SRE and then do freelance work or apply for a position that will help you gain some needed experience. For example, you may learn to code and get a job or freelance as a developer. Then, while you continue to learn and grow in that area, you can develop the next skill that will take you one step closer to SRE.
Rinse and repeat until you have the skills and experience you need to land your first job as a site reliability engineer.
Get certified in SRE
Although you do not need certification in Site Reliability Engineering to practice it, it may help you learn very important concepts and principles that will guide your work as well as your learning and job search journey. Not to mention it can set you apart from other candidates when you apply for an SRE position.
The DevOps Institute offers a certification scheme for site reliability engineers that comprises two levels: Foundation and Practitioner. The SRE Foundation course is an introduction to SRE and its principles and practices, while SRE Practitioner dives deeper into implementing those practices as well as other SRE methods and tools. Both levels use a variety of real-life case studies and scenarios that bring life to the courses and help candidates understand how the concepts and ideas are applied in practice.
Good e-Learning is an award-winning online training provider and a trusted education partner of the DevOps Institute. We offer a diverse portfolio of fully certified training courses, including Site Reliability Engineering (SRE) Foundation and Practitioner. Our in-house training specialists work with highly experienced subject matter experts to offer unique valuable advice so candidates can apply their training in practice.
Want to find out more? Visit the Good e-Learning website or sign up for a free trial of our Site Reliability Engineering courses today!