DevOps: ¿qué es, por qué y cuánto demanda?



Hace unos años, apareció un nuevo ingeniero especializado en DevOps en TI. Rápidamente se convirtió en una de las más populares y buscadas en el mercado. Pero la paradoja es que la popularidad de DevOps se debe en parte al hecho de que las empresas que contratan a tales especialistas a menudo los confunden con representantes de otras profesiones. 
 
Este artículo está dedicado a analizar los matices de la profesión de DevOps, la situación actual del mercado y las perspectivas. Resolvimos este difícil problema con la ayuda del Decano de la Facultad de DevOps en GeekBrains en la Universidad en línea GeekUniversity Dmitry Burkovsky.



Entonces, ¿qué es exactamente DevOps?


El término en sí significa Operaciones de Desarrollo. Esto no es tanto una especialidad como un enfoque para organizar el trabajo en una empresa mediana o grande cuando se prepara un producto o servicio. El hecho es que diferentes departamentos de una compañía participan en el proceso de preparación, y sus acciones están lejos de estar siempre bien coordinadas. 
 
Entonces, los desarrolladores, por ejemplo, no siempre saben qué problemas surgen para los usuarios que trabajan con un programa o servicio lanzado. Soporte técnico: conoce todo a la perfección, pero es posible que no se dé cuenta de lo que está "dentro" del software. Y aquí viene el ingeniero DevOps, que ayuda a coordinar el proceso de desarrollo, ayuda a automatizar procesos, mejora su transparencia. 
 
El concepto DevOps une a personas, procesos y herramientas. 
 


¿Qué debe saber y poder hacer un ingeniero de DevOps?


Según uno de los seguidores más famosos del concepto DevOps, Joe Sánchez, un representante de la profesión, debe tener una buena comprensión de los matices del concepto en sí, tener experiencia en la administración de sistemas Windows y Linux, comprender el código del programa escrito en diferentes idiomas, ejecutar Chef, Puppet, Ansible. Está claro que para analizar el código necesita conocer varios lenguajes de programación, y no solo saber, sino también tener experiencia en el desarrollo. Y la experiencia de probar productos y servicios de software listos para usar también es muy deseable. 
 
Pero idealmente, este nivel de experiencia y conocimiento está lejos de ser un representante de la esfera de TI. Aquí hay un conjunto de conocimientos y experiencia mínimos necesarios para un buen DevOps:

  • Sistema operativo GNU / Linux, Windows.
  • Al menos 1 lenguaje de programación (Python, Go, Ruby).
  • El lenguaje de scripting de shell es bash para Linux y powershell para Windows.
  • Sistema de control de versiones - Git.
  • Sistemas de gestión de configuración (Ansible, Puppet, Chef).
  • Al menos una de las plataformas para la organización de contenedores (Kubernetes, Docker Swarm, Apache Mesos, Amazon EC2 Container Service, Microsoft Azure Container Service).
  • Capacidad para trabajar con proveedores en la nube (por ejemplo: AWS, GCP, Azure, etc.) usando Terraform, para saber cómo se implementa la aplicación en la nube.
  • Capacidad para configurar la canalización de CI / CD (Jenkins, GitLab), pila ELK, sistemas de monitoreo (Zabbix, Prometheus).

Y aquí hay una lista de habilidades que los especialistas de DevOps suelen señalar en Haber Career.

imagen
 
Además, el especialista de DevOps debe comprender las necesidades y requisitos del negocio, ver su papel en el proceso de desarrollo y ser capaz de construir el proceso teniendo en cuenta el interés del cliente. 



¿Y qué hay del umbral de entrada?


La lista de conocimiento y experiencia fue presentada en vano arriba. Ahora es más fácil entender quién puede convertirse en un especialista de DevOps. Resulta que la forma más fácil de entrar en esta profesión es para representantes de otras especialidades de TI, especialmente administradores y desarrolladores de sistemas. Y eso, y otros, pueden acumular rápidamente la cantidad faltante de experiencia y conocimiento. Ya tienen la mitad del conjunto requerido y, a menudo, más de la mitad.
 
Y los grandes ingenieros de DevOps provienen de probadores. Saben qué y cómo funciona, conscientes de las deficiencias y deficiencias del software y el hardware. Podemos decir que un probador que conoce lenguajes de programación y sabe cómo escribir programas, sin DevOps de cinco minutos.
 
Pero será difícil para un representante de una especialidad no técnica que nunca se haya ocupado del desarrollo o la administración del sistema. Por supuesto, nada es imposible, pero sin embargo, los principiantes deben evaluar adecuadamente sus fortalezas. Tomará mucho tiempo obtener el “equipaje” requerido. 



¿Dónde puede trabajar DevOps?


Una gran empresa cuyo trabajo está relacionado directa o indirectamente con el desarrollo de aplicaciones y la administración de hardware. El déficit máximo en los ingenieros de DevOps se encuentra entre las compañías que brindan una gran cantidad de servicios a los usuarios finales. Estos son bancos, operadores de telecomunicaciones, los mayores proveedores de Internet, etc. Entre las compañías que contratan activamente ingenieros de DevOps se encuentran Google, Facebook, Amazon, Adobe.
 
Presentamos DevOps y startups de pequeñas empresas, pero para muchas de estas empresas, invitar a ingenieros de DevOps es más un tributo a la moda que una necesidad real. Por supuesto, hay excepciones, pero no hay muchas. Las pequeñas empresas necesitan, más bien, "un suizo, un segador y un tipo", es decir, una persona que pueda trabajar en varias áreas. Una buena estación de servicio puede manejar todo esto. El hecho es que las pequeñas empresas son importantes para la velocidad del trabajo, la optimización de los procesos de trabajo es fundamental para las medianas y grandes empresas. 

Aquí hay algunas vacantes (puede seguir las nuevas en Habr Career usando este enlace ):

imagen
 


DevOps salariales en Rusia y el mundo


En Rusia, el salario promedio de un ingeniero DevOps es de aproximadamente 132 mil rublos por mes. Estos son los cálculos de la calculadora salarial del servicio Habr Career, realizada sobre la base de 170 cuestionarios para el segundo semestre de 2020. Sí, la muestra no es tan grande, pero es bastante adecuada como la "temperatura promedio en el hospital".  Hay salarios de 250 mil rublos, hay unos 80 mil y un poco más bajos. Todo depende de la empresa, las calificaciones y el propio especialista, por supuesto.  En cuanto a otros países, también se conocen estadísticas salariales. Los especialistas de Stack Overflow hicieron un buen trabajo analizando los perfiles de aproximadamente 90 mil personas, no solo DevOps, sino también representantes de especialidades técnicas en general. Resultó que el Gerente de Ingeniería y solo DevOps obtienen lo máximo. 
 
imagen


imagen

 
El ingeniero DevOps recibe alrededor de $ 71 mil al año. Según el recurso Ziprecruiter.com, el salario de un profesional en este campo es de $ 86 mil al año. Bueno, el servicio Payscale.com muestra cifras que son bastante agradables a la vista: el salario promedio de un especialista de DevOps, según el servicio, supera los $ 91 mil. Y este es el salario de un especialista junior, el senior puede obtener $ 135 mil. 
 
Como conclusión, vale la pena decir que la demanda de DevOps es gradual creciente, la demanda de especialistas de cualquier nivel excede la oferta. Entonces, si lo desea, puede probarlo en esta área. Es cierto que uno debe recordar que el deseo por sí solo no es suficiente. Necesita desarrollar, aprender y trabajar constantemente.

All Articles