Site reliability engineer: una nueva oportunidad de trabajo

Site Reliability Engineer

Qué es el ingeniero de confiabilidad del sitio, qué habilidades requiere esta profesionalidad y por qué podría representar una nueva oportunidad de carrera

DevOps es una 
metodología de desarrollo de software que se centra en la comunicación, colaboración e integración entre desarrolladores y operadores en "operation"
es decir, las funciones de una empresa que se ocupan del suministro de un producto/servicio al cliente. El rol de los operadores se está incorporando gradualmente a otras figuras como la del desarrollador.

Entonces, si ya tiene excelentes habilidades en DevOps y desea pasar a un "siguiente nivel", quizás para hacer un cambio en su carrera, entonces probablemente la figura del ingeniero de confiabilidad del sitio podría hacer por usted. 
El primer ingeniero de confiabilidad del primer sitio se originó mucho antes de las ideas de DevOps. En 2003, Google necesitaba hacer su infraestructura más eficiente, confiable y escalable. Las prácticas desarrolladas por el equipo de desarrolladores e ingenieros fueron tan eficientes que Big G quería ofrecerlas a otras compañías como Amazon o Netflix, para que pueda trabajar aún mejor entre compañías.

El ingeniero de confiabilidad del sitio se dedica 
al desarrollo de soluciones automatizadas para aspectos operativos como la planificación del rendimiento, la capacidad operativa, el monitoreo y la respuesta a accidentes. 
Por lo tanto, es una figura complementaria de las prácticas de DevOps que crea vínculos entre el desarrollo y la operación.

Esta profesionalidad se describe en detalle en 
Site Reliability Engineering – How Google Runs Production Systems. 
El trabajo, de forma gratuita, presenta varios conceptos, como objetivos de nivel de servicio, errores de presupuesto y describe las prácticas escritas por Google para la automatización de tareas y la gestión de emergencias e incidentes, proporcionando varias indicaciones sobre cómo resolver ciertos problemas y sobre cómo monitorear su infraestructura mediante la administración de riesgos y la creación de un sistema escalable.

Entonces, 
¿cómo funciona un ingeniero de confiabilidad del sitio? 
Esta pregunta fue respondida por Ben Traynor, vicepresidente del equipo de ingeniería de Google y fundador de Google SRE:

"El Site reliability engineer básicamente realiza un trabajo que históricamente es realizado por el equipo de operaciones, pero el SRE explota a los ingenieros con habilidades y experiencia en automatización de software y, por lo tanto, en aquellas tecnologías que permiten al hombre delegar más y más tareas a un sistema informatico En general, un equipo de SRE es responsable de la disponibilidad del servicio, la gestión de la latencia, el rendimiento, la eficiencia del sistema, la gestión del cambio, la supervisión, la respuesta a emergencias y la planificación de operaciones ".

Los ingenieros de confiabilidad del sitio dividen su tiempo entre operaciones, tareas de monitoreo y desarrollo de sistemas y software que ayudan a aumentar la confiabilidad y el rendimiento. 
Su objetivo principal es asegurarse de que una tarea no requiera intervención humana. 
Para lograr esto, debe estar equipado con las herramientas de trabajo adecuadas, como las herramientas para el aprovisionamiento automático en entornos de prueba, leer registros y crear estadísticas.

Los SRE pueden reducir la carga de trabajo para todo el equipo y ayudar a los desarrolladores a centrarse únicamente en el desarrollo de capacidades básicas. Están en contacto cercano con los desarrolladores del producto para asegurarse de que las soluciones diseñadas cumplan con ciertos requisitos de disponibilidad, rendimiento, seguridad y mantenimiento. También trabajan con los ingenieros de lanzamiento para asegurarse de que el suministro de software sea lo más eficiente posible.

¿Quién debería considerar una carrera como ingeniero de confiabilidad del sitio? 
Es posible convertirse en uno con una buena dosis de habilidad y experiencia en el desarrollo de software e ingeniería de sistemas, especialmente si tiene la propensión a desarrollar soluciones automatizadas.

Entonces, si usted es un ingeniero de sistemas y desea consolidar sus habilidades de programación o, por el contrario, si es un programador y desea mejorar su experiencia en administración de sistemas, SRE es el rol para usted. Dependiendo del área de experiencia, su conocimiento puede ser muy útil como SRE y mejorará el proyecto en el que está trabajando, obteniendo una visión general del proceso de creación, distribución y mantenimiento de un servicio o software.


Comentarios

Entradas Populares

IoT y Blockchain: ¿un futuro en interoperabilidad?

IoT: factores clave para invertir en el sector