
Tecnologías y herramientas que un ingeniero DevOps debe dominar.
DevOps es una tendencia en auge en TI, la popularidad y la demanda de esta profesión están en constante crecimiento. Recientemente, GeekBrains ha inaugurado , donde se forman especialistas en este campo. A menudo, la profesión de DevOps se confunde con profesiones relacionadas, como la programación o la administración de sistemas.
Para aclarar qué es exactamente DevOps y para qué se necesitan los representantes de esta profesión, hablamos con Nikolai Butenko, arquitecto . Él participó en el desarrollo del programa del curso de la facultad de DevOps y al mismo tiempo enseña a estudiantes de tercer trimestre.
¿Qué debe saber y ser capaz de hacer un buen DevOps?
Aquí es mejor comenzar diciendo lo que no debe saber hacer. Existe el mito de que un representante de esta profesión es un hombre orquesta, capaz de escribir un excelente código, probarlo y, en su tiempo libre, arreglar impresoras para sus compañeros. Quizás también ayuda en el almacén y sustituye al barista.
Para saber qué debe saber hacer un especialista en DevOps, volvamos a la definición del término. DevOps es la optimización del tiempo desde el desarrollo del producto hasta su lanzamiento al mercado. Por lo tanto, el especialista optimiza el proceso entre el desarrollo y la operación, habla su idioma y construye un pipeline eficiente.
¿Qué necesitas saber y ser capaz de hacer? Aquí están las cosas importantes:
- Se requieren buenas habilidades interpersonales, ya que es necesario interactuar al mismo tiempo con varios departamentos dentro de una misma empresa.
- Pensamiento analítico y estructurado para ver los procesos desde arriba y entender cómo optimizarlos.
- Es necesario comprender todos los procesos de desarrollo y operación. Solo así se pueden optimizar.
- También se requieren excelentes habilidades de planificación, análisis y diseño para crear un proceso de producción unificado.
¿Son todos los representantes de DevOps iguales o hay diferencias dentro de la profesión?
Recientemente han surgido varias ramificaciones dentro de una misma especialidad. Pero en general, el concepto de DevOps incluye principalmente tres direcciones: SRE (administrador), Developer (desarrollador) y Manager (responsable de la interacción con el negocio). Un especialista en DevOps entiende las necesidades del negocio y organiza un trabajo efectivo entre todos mediante la creación de un proceso unificado.
También tiene una buena comprensión de todos los procesos del ciclo de desarrollo del producto, la arquitectura, y entiende de seguridad informática al nivel necesario para evaluar riesgos. Además, los DevOps conocen y comprenden los enfoques y herramientas de automatización, así como el soporte pre y post-lanzamiento de programas y servicios. En general, la tarea del DevOps es observar todo el sistema como un todo, dirigir y gestionar los procesos que contribuyen al desarrollo de ese sistema.

Lamentablemente, tanto en Rusia como en el extranjero, los empleadores no siempre comprenden la esencia de DevOps. Al revisar las ofertas de empleo publicadas, se puede notar que al nombrar una vacante devOps, las empresas buscan ya sea administradores de sistemas, administradores de Kubernetes o incluso testers. Especialmente destaca la variada mezcla de conocimientos y habilidades en las vacantes de DevOps en HH.ru y LinkedIn.
Es importante destacar que DevOps no es solo una especialidad, es, ante todo, una metodología que trata la infraestructura como código. Como resultado de la implementación de esta metodología, todos los miembros del equipo de desarrollo ven y entienden no solo su segmento de trabajo, sino que adquieren una visión del trabajo de todo el sistema.
¿Cómo puede ayudar DevOps a la empresa en la que trabaja?
Una de las métricas más importantes para el negocio es el Time-to-Market (TTM). Este es el tiempo de lanzamiento al mercado, es decir, el intervalo de tiempo durante el cual se realiza la transición de la idea de crear un producto a la salida del producto a la venta. El TTM es especialmente importante para aquellas industrias donde los productos se vuelven obsoletos rápidamente.
Con la ayuda de DevOps, una serie de conocidos minoristas en Rusia y en el extranjero han comenzado a desarrollar nuevas direcciones. Estas empresas están trasladándose masivamente a línea, renunciando completamente o parcialmente a plataformas físicas. En estas condiciones, se necesita un desarrollo rápido de aplicaciones y servicios, lo cual es imposible sin el uso de herramientas DevOps.

Como resultado, algunos minoristas lograron acelerar el proceso de lanzamiento de las aplicaciones y servicios necesarios en tan solo un día. Y este es un factor crucial de competencia en las condiciones del mercado moderno.
¿Quién puede convertirse en DevOps?
Por supuesto, será más fácil para quienes provienen de especialidades técnicas: programadores, testers, administradores de sistemas. Aquellos que deseen ingresar a este campo sin la formación correspondiente deben estar preparados para aprender los fundamentos de la programación, las pruebas, la gestión de procesos y la administración de sistemas. Solo después de dominar todo esto se podrá abordar el estudio del concepto de DevOps como un todo.
Para comprender mejor el concepto y tener una idea de los conocimientos y habilidades necesarios, vale la pena leer "Guía de DevOps", estudiar "El Proyecto Phoenix", así como la metodología . Otro libro excelente es .
A las personas con una mentalidad analítica y una capacidad para aplicar un enfoque sistemático les resulta más fácil el DevOps. Es difícil decir cuánto tiempo necesitará un principiante para convertirse en un gran DevOps. Todo depende de la base inicial, así como del entorno y las tareas que deben resolverse, además de la escala de la empresa. Entre las empresas que necesitan DevOps se encuentran muchos gigantes tecnológicos: Amazon, Netflix, Adobe, Etsy, Facebook y Walmart.
En conclusión, se puede decir que más de la mitad de las vacantes publicadas para buscar DevOps están en realidad destinadas a administradores de sistemas experimentados. Sin embargo, la demanda de DevOps está creciendo gradualmente, y actualmente hay una gran escasez de profesionales calificados en este perfil.
Para convertirse en un especialista de este tipo, es necesario estudiar nuevas tecnologías, herramientas, aplicar un enfoque sistemático durante el trabajo y utilizar la automatización de manera adecuada. Sin ella, es muy difícil, si no imposible, organizar correctamente DevOps.
Fuente: habr.com
