Quién es un ingeniero de DevOps, qué hace, cuánto gana y cómo convertirse en uno

Los ingenieros de DevOps son especialistas multidisciplinarios que saben cómo automatizar procesos y cómo trabajan los desarrolladores, el control de calidad y los gerentes. Saben programar, dominan rápidamente herramientas complejas y no se pierden en una tarea desconocida. Los ingenieros de DevOps son pocos: están dispuestos a pagar entre 200 y 300 mil rublos, pero aún quedan muchas vacantes.

Dmitry Kuzmin dice qué está haciendo exactamente DevOps y qué debe estudiarse para solicitar dicho puesto. Bonificación: enlaces importantes a libros, videos, canales y la comunidad profesional.

¿Qué hace el ingeniero DevOps?


En una situación con DevOps, es importante no confundir los términos. El hecho es que DevOps no es un área específica de actividad, sino una filosofía profesional. Esta es una metodología que ayuda a los desarrolladores, evaluadores y administradores de sistemas a trabajar de manera más rápida y eficiente debido a la automatización y la fluidez.

En consecuencia, el ingeniero DevOps es un especialista que implementa esta metodología en el proceso de trabajo:

  • En la etapa de planificación, el ingeniero de DevOps ayuda a decidir qué arquitectura utilizará la aplicación, cómo se escalará y elegir un sistema de orquestación.
  • A continuación, configura el servidor, la verificación automática y la carga de código, y la verificación del entorno.
  • Luego, automatiza las pruebas y resuelve las tareas de implementación.
  • . DevOps , , .
  • , , QA, .

, , . , , , , . , , — DevOps-.

Hay confusión en el mercado de personal. A veces, una empresa busca ingenieros de DevOps para el puesto de ingeniero de sistemas, ingeniero de construcción u otra persona. Las responsabilidades que dependen del tamaño de la empresa y la dirección también cambian: en algún lugar que buscan una persona para consultar, en un lugar en el que solicitan automatizar todo, pero en algún lugar se les exige que realicen funciones avanzadas de un administrador del sistema que puede programar.

Lo que necesitas para comenzar en la profesión.


La entrada a la profesión requiere entrenamiento previo. Solo llegar a los cursos desde cero sin comprender nada en TI y aprender al nivel junior fracasará. Necesita una formación técnica:

  • , , . , , , . , Linux, .
  • , — , .
  • , — Python Go, (- ), .
  • — , .

No es necesario conocer todo lo anterior; un nivel mínimo de capacitación es suficiente para comenzar a aprender DevOps. Si hay una formación técnica de este tipo, intente inscribirse en los cursos.

Lo que DevOps debe saber


Un buen ingeniero de DevOps es un especialista multidisciplinario con horizontes muy amplios. Para un trabajo exitoso, deberá comprender varias instrucciones de TI a la vez.

Desarrollo


DevOps escribirá un script que ayudará a los desarrolladores a instalar código en el servidor. Hará un programa que "sobre la marcha" prueba la capacidad de respuesta de las bases de datos. Escribirá una aplicación para el control de versiones. Finalmente, simplemente notará un posible problema de desarrollo que puede aparecer en el servidor.

Un fuerte especialista de DevOps conoce varios idiomas adecuados para la automatización. No los comprende a fondo, pero rápidamente escribirá un pequeño programa o leerá el código de otra persona. Si no ha encontrado desarrollo antes, comience con Python: tiene una sintaxis simple, es fácil trabajar con tecnologías en la nube, hay mucha documentación y bibliotecas.

Sistemas operativos


Es imposible conocer todas las características de cada versión de cada sistema: se pueden dedicar miles de horas a dicha capacitación y no tendrá sentido. En cambio, un buen DevOps comprende los principios generales de trabajar en cualquier sistema operativo. Aunque, a juzgar por las menciones en las vacantes, la mayoría ahora trabaja en Linux.

Un buen ingeniero comprende en qué sistema es mejor implementar un proyecto, qué herramientas utilizar y qué posibles errores pueden aparecer durante la implementación u operación.

Las nubes


El mercado de tecnología en la nube está creciendo a un promedio de 20-25% por año: esta infraestructura le permite automatizar las pruebas de código, crear aplicaciones a partir de componentes y entregar actualizaciones a los usuarios. Good DevOps comprende tanto las soluciones totalmente turbias como las híbridas.

Los requisitos estándar para los ingenieros generalmente incluyen GCP, AWS y Azure.

Esto incluye la propiedad de las herramientas de CI / CD. Por lo general, Jenkins se usa para la integración continua, pero vale la pena probar los análogos. Hay muchos de ellos, por ejemplo, Buddy, TeamCity y Gitlab CI. Estudiaremos Terraform como una herramienta declarativa que ayuda a elevar y configurar remotamente la infraestructura en las nubes. Y Packer, que es necesario para crear automáticamente imágenes del sistema operativo .

Sistemas de orquestación y microservicios.


La arquitectura de microservicios tiene muchas ventajas: estabilidad, la capacidad de escalar, simplificar y reutilizar rápidamente. DevOps comprende cómo funcionan los microservicios y puede prevenir posibles problemas.

Conoce a fondo a Docker y Kubernetes. Él entiende cómo funcionan los contenedores, cómo construir un sistema para que pueda desactivar algunos de ellos sin consecuencias para el sistema en general. Por ejemplo, puede construir un clúster de Kubernetes usando Ansible

¿Qué más probar para el futuro DevOps?


Es infinito enumerar las herramientas que pueden ser útiles para el ingeniero DevOps. Alguien trabaja en la orquestación de proyectos, otros pasan la mayor parte de su tiempo automatizando la implementación y las pruebas, mientras que otros aumentan la eficiencia en la gestión de la configuración. En el proceso, quedará claro dónde excavar y qué proyectos serán útiles.

Aquí hay otro pequeño mínimo que ayudará al principio:

  • Entiende cómo funcionan Git y Github si no has encontrado esto antes. Instale GitLab en su servidor.
  • Conozca los lenguajes de marcado JSON y YAML.
  • Instale e intente trabajar en bases de datos, no solo en MySQL, sino también en NoSQL. Prueba MongoDB.
  • Comprenda cómo administrar la configuración de varios servidores a la vez. Por ejemplo, usando Ansible.
  • Configure de inmediato la supervisión de carga y los registros. Pruebe un montón de Prometeo, Grafana, Alertmanager.
  • Busque las mejores soluciones de implementación para diferentes idiomas: solo conozca, implemente y comprenda en un borrador de capacitación o trabajo.

¿Por qué deberías empezar a aprender DevOps ahora?


En el mercado de ingenieros de DevOps, hay una escasez de personal. Esto se confirma condicionalmente por la cantidad y calidad de las vacantes:

  • En Rusia, solo en HeadHunter, más de 2 mil empleos para esta palabra clave están constantemente disponibles.
  • Y solo 1.900 personas publicaron un currículum.

Dado que publicar un currículum no significa una búsqueda activa de empleo, resulta que hay dos o incluso tres vacantes por especialista; esta situación no existe incluso en el popular mercado de desarrollo web. Agregue aquí más vacantes de Habr y de los canales de Telegram: la escasez de especialistas es enorme.


Preste atención a los requisitos salariales de los solicitantes:

DevOps no es menos demandado en el mundo: si va a mudarse a los EE. UU. O Europa, solo en el portal Glassdoor más de 34 mil empresas están buscando tales especialistas. De los requisitos frecuentes: experiencia de 1 a 3 años, la capacidad de trabajar con las "nubes" y no tener miedo de consultar funciones.

Hay varias veces menos ofertas en freelance: los ingenieros de DevOps buscan principalmente personal a tiempo completo y a tiempo completo.


Encontrar un proyecto independiente adecuado es difícil, pero

puede imaginar la trayectoria profesional condicional de un ingeniero de DevOps de la siguiente manera:

  • Durante medio año, trabaja como administrador de sistemas en una pequeña empresa de TI. Paralelamente, aprender un lenguaje adecuado para la automatización.
  • Estudia intensamente en cursos, unos seis meses.
  • Cambia a otro trabajo: a una empresa que vende soluciones en la nube, una sucursal de una gran corporación, a desarrolladores de grandes proyectos. En pocas palabras, donde hay una necesidad de automatización e implementación continuas. En la posición inicial, esto es aproximadamente 100 mil rublos.
  • Ha estado trabajando y estudiando activamente durante varios años, aumentando sus ingresos varias veces.
  • Se convierte en un experto en la comunidad profesional y se dedica a la consultoría. O convertirse en arquitecto de sistemas o director de TI.

DevOps — . . , , IT- - . , .

DevOps


El salario promedio promedio de acuerdo con los datos del segundo trimestre de 2019 para devops está en una bifurcación entre 90 y 160 mil rublos. Hay ofertas más baratas, en su mayoría de 60 a 70 mil.

Constantemente hay ofertas de hasta 200 mil, hay vacantes con un salario de hasta 330 mil rublos.


Entre los profesionales operativos, DevOps se paga por encima del resto. Fuente: Haber .

Ahora se requieren ingenieros de DevOps, incluidos los principiantes, en grandes bancos, corporaciones, servicios en la nube, sistemas comerciales y otras organizaciones que se preocupan por mantener sus soluciones de TI.

Un excelente candidato para una vacante junior con un salario de 60 a 90 mil será un administrador de sistemas novato con experiencia de aproximadamente un año y un diploma de perfil.
 

No existen tales estadísticas, pero parece que a las personas que tienen experiencia con Linux se les paga más

Qué mirar y leer para crecer en la profesión


Para sumergirse en el mundo de DevOps, pruebe varias fuentes de información a la vez:


Dónde estudiar en DevOps


Puede obtener conocimiento estructurado en el curso " DevOps-engineer " en Netología. Aprenderá el ciclo completo de metodología:

  • Aprenda cómo analizar el código y usar rápidamente las herramientas de control de versiones.
  • Comprenda las mejores prácticas para la integración continua, las pruebas y el ensamblaje.
  • Aprenda a administrar los cambios en las aplicaciones y a automatizarlos.
  • En la práctica, aprenda herramientas de configuración y administración.
  • Acostúmbrese a seleccionar y configurar inmediatamente los servicios necesarios para el monitoreo.

Obtenga un curso de programación de Python como un bono: resolverá los problemas aún más rápido y más fácil. Todo en la práctica: utilizamos AWS, GCP o Azure.
Esto es suficiente para pasar de un ingeniero novato o administrador de sistemas a un DevOps popular y elevar agradablemente su precio en el mercado laboral.


All Articles