Career Definition of a Site Reliability Engineer
Site reliability engineers are experts in developing and maintaining computer systems. Their work can involve creating storage systems, such as Clouds, and then developing the network required to access those systems. They may write software code for the systems and applications on which they work. These engineers can be involved in all aspects of software, application or system development. This may start with contributing to the design plan for the project and then writing code and taking the steps necessary to produce the product. They implement their work and run tests to ensure that the systems, applications and software function properly.
Once these technological components are implemented, site reliability engineers continue to monitor them to ensure that they perform properly. They work to prevent problems, so their responsibilities involve anticipating potential issues and resolving them before they happen. Since they work with data storage and other types of systems, they have to ensure that their systems are secure. They collaborate with other site reliability engineers, and when system problems do occur they take steps to correct them or implement strategies to address the specific issues. These professionals are also responsible for carefully documenting all of their work.
|Educational Requirements||Bachelor's degree|
|Job Skills||Professional computer programming skills, knowledge of computer programming languages, organizational skills, communication skills, teamwork skills, problem-solving skills, analytical skills, attention to detail|
|Median Salary (2017)*||$116,062|
|Job Outlook (2014-2024)**||9% (computer network architects)|
Sources: *PayScale.com; **U.S. Bureau of Labor Statistics
A bachelor's degree is required by most employers seeking site reliability engineers, and most prefer applicants who've studied computer science. While certification is not required, formal training in a range of programming languages and experience with different operating and programming platforms can be an asset to those seeking employment in this field. Common programming languages used include C++ and Java. Employers may specifically seek applicants with experience working with Linux and Cloud Computing systems.
Site reliability engineers need to have a wide range of skills so that they can effectively contribute to all stages of system, software or application development. This includes attention to detail while working with lines of code as they create the program used to operate their projects. They also need good problem-solving skills so that they can identify issues and determine how to correct them. Reviewing lines of code and operational processes also involves the use of analytical skills. In addition, site reliability engineers need excellent communication and teamwork skills in order to effectively relay information to other engineers and properly document their work.
Career Outlook and Salary
PayScale.com indicates that in 2017, site reliability engineers earned an annual median salary of $116,062. The U.S. Bureau of Labor Statistics (BLS) does not provide specific data for site reliability engineers. They can be included with the BLS listing for computer network architects because they work on design plans for accessing clouds and other computer systems, and they also review systems so that they can anticipate how the needs of the systems will change in the future, which are comparable to aspects of a site reliability engineer's work. The BLS projected a 9% rate of job growth for computer network architects from 2014 to 2024.
The following list of links connects to a number of articles about different careers. These professions share many similar duties with site reliability engineers and may appeal to those considering this field.