Reentrenamiento en DevOps: para qué prepararse

En este artículo, Alexandra Romanenko, que colabora con EPAM como ingeniera principal de software, comparte sus puntos de vista sobre el reciclaje y habla sobre qué buscar si desea convertirse en un especialista de DevOps.

imagen
Fuente de la foto: pexels.com

Mi historia


Me encontré con la especialidad DevOps mientras seguía siendo desarrollador mientras trabajaba en un proyecto utilizando tecnologías sin servidor. En los proyectos clásicos de Java, los roles de probador, desarrollador y DevOps están claramente delineados, y los sistemas sin servidor son fundamentalmente diferentes. Este nuevo e interesante tema "alimentó" mi curiosidad profesional, comencé a profundizar en el proyecto, estudiarlo, no solo en mi área de trabajo. Luego comencé a preparar informes sobre el tema de los servicios de Amazon sin servidor y a hablar con ellos en las reuniones de DevOps. En mi posición actual, era ideal para las habilidades, y hubo una reorientación.

¿De dónde vienen los especialistas de DevOps?


Mi experiencia muestra que, en general, en DevOps provienen de administradores de sistemas y, con menos frecuencia, de desarrolladores. Para ser un "puente" confiable entre el proceso de desarrollo y las actividades operativas, debe tener conocimiento en ambas áreas. En la práctica, esto es extremadamente raro, porque en el proceso, los colegas tienen que compartir experiencias. Por ejemplo, me faltaba conocimiento en el campo de la ingeniería de sistemas. No estudié las disciplinas necesarias en la universidad y no las encontré en la práctica. Llenar los vacíos ayudó a los colegas con experiencia en administración de redes, con quienes, a su vez, compartí mis conocimientos. En un buen equipo, la simbiosis y la asistencia mutua siempre reina, de lo contrario, de ninguna manera.

En mi opinión, es más fácil para los especialistas con experiencia en desarrollo sentirse cómodos con DevOps por dos razones:

  1. Son más conscientes de las solicitudes de los equipos de desarrollo y prueba, "hablan el mismo idioma ".
  2. Los programadores están acostumbrados a la complejidad estructural . Desarrollan destreza al trabajar con grandes cantidades de datos, miles de archivos y carpetas. Cualquier proyecto, en cualquier lenguaje de programación, es más complicado que el código con el que DevOps trata, por lo tanto, como dicen, no están acostumbrados. Pero los colegas sin habilidades de desarrollo tienen un poco más complicado.

Es cierto, hay otra cara de la moneda. Si, por ejemplo, una de las herramientas que DevOps necesita no funciona correctamente, los compañeros administradores de sistemas solo pueden expresar su disgusto en voz alta. Al mismo tiempo, como desarrollador, estoy agregando trabajo a mí mismo: estoy buscando un error en el código e incluso tratando de corregir el error. Pero esto solo es posible si el instrumento está escrito en un idioma que yo hablo, si no, habrá una amarga decepción. Uno de mis informes se llama "Por qué odio Terraform": inicialmente porque a menudo se rompe debido a errores. Pero el hecho de que esté escrito en GO, que no me pertenece y que, por lo tanto, no puede corregir errores, tampoco ayuda

Fuentes de conocimiento


Estoy a favor de no seguir a los demás a ciegas, sino de abrirme camino. Por lo tanto, le aconsejo que aproveche las oportunidades disponibles y se desarrolle a un ritmo que sea cómodo para usted.

  1. Comience con su proyecto. Seguramente hay un especialista de DevOps en su proyecto. Analiza lo que hace, qué habilidades usa. Si tiene preguntas, pregunte directamente. Su tarea es convertirse en DevOps en su proyecto. Siempre es más fácil volver a capacitarse en un entorno familiar que llegar a un nuevo trabajo en un rol diferente. Conoces las tareas de tu proyecto, conoces el equipo, las condiciones confortables. Será más fácil adaptarse a la falta de familiaridad de las nuevas habilidades.
  2. Reuniones cara a cara, conferencias, mitaps. Si su proyecto no tiene un especialista de DevOps, los eventos profesionales son una excelente solución. En tales conferencias y reuniones, tiene acceso a la práctica. Los desarrolladores pueden hacer preguntas y buscar asesoramiento. Y los temas de los informes le dirán lo que ahora es relevante en esta profesión.
  3. Trabajar con documentación oficial. No soy fanático de los cursos en línea y los videos tutoriales. Toda la información necesaria está contenida en la documentación oficial. A menudo las personas se encuentran con un problema, busquen en Google la solución, copie y pegue el código o script de la respuesta más "polused" en el foro. A nivel mundial, esto no resuelve el problema. Una persona todavía no entiende cómo funciona o por qué todavía no funciona. Además, puede buscar una solución y crear aún más problemas.

Mi amigo compró un macbook. Algo salió mal con él, decidió "pedir" una salida a Internet. En uno de los foros encontré la respuesta más "plausible" y decidí usarla. Como más tarde descubrió, los amantes del sarcasmo votaron por este comentario. En la respuesta en el foro estaba escrito: "Ejecutar" sudo rm -rf "en la línea de comando". Como resultado, de un solo golpe, tomó todo para sí misma en una computadora nueva. Si ella verificó cuál era la tarea de este código antes de usarlo, los problemas podrían haberse evitado.

Es mejor pasar 3 horas para comprender cómo funciona un código o script, que 5 minutos para copiar la respuesta de otra persona en Internet y 3 días para desmontar por qué algo se ha roto.

Características clave de DevOps


  • Perseverancia Debe estar preparado para el hecho de que mucho no funcionará, no solo la primera vez, sino también la segunda, o incluso la tercera. Pero no puedes dejar lo que empezaste a mitad de camino. Por lo tanto, las personas que son meticulosas, el trabajo duro no es adecuado para el personaje, será muy difícil.
  • Atención al detalle. DevOps desatendido es como un elefante en una tienda de porcelana. Una acción descuidada conllevará un daño significativo. Puede infligir grandes pérdidas a las empresas haciendo clic accidentalmente en el botón equivocado.

  • Pensamiento analítico: algunos DevOps piensan que están en el camino de menor resistencia, tratando de encontrar ejemplos listos y aplicarlos en su proyecto, en lugar de estudiar la documentación técnica. De hecho, desarrollan un mal hábito y se conducen a un callejón sin salida. Bueno, si el ejemplo encontrado funciona, pero si no, la persona pierde tiempo en la próxima búsqueda. ¿Recuerdas la cita de la caricatura "Alas, patas y colas": "Es mejor pasar un día, pero luego volar en 5 minutos"? Le aconsejo que lea la documentación, que describe claramente el principio de funcionamiento de una herramienta. Inicialmente, le permite organizar e iniciar el proceso correctamente. Tomemos un ejemplo de buenos desarrolladores: estudian una pregunta, analizan, piensan y luego escriben.
  • Multitarea Los especialistas de DevOps tienen que combinar el trabajo de soporte y desarrollo. Por un lado, ayudo constantemente al equipo en términos de apoyo. Algo se rompe, no funciona, algo falta, algo necesita ser cambiado, agregado, explicado. Al mismo tiempo, hay una actividad de fondo constante en la programación. Por supuesto, el desarrollo siempre es más fácil cuando nadie tira al menos un par de horas. Siendo DevOps, tuve que aceptar el hecho de que alguien necesita mi ayuda todo el tiempo. Debe acostumbrarse a realizar varias tareas en paralelo, cambiando y adaptándose rápidamente.

Desarrollarás automáticamente estas habilidades. Involúcralos todos los días. Lo principal es estar preparado y saber lo que le espera.

Mi acercamiento al reentrenamiento


Una condición previa para un cambio en la especialización es el interés. Es él quien fomenta el estudio de áreas relacionadas. Para el desarrollo profesional, es extremadamente importante estudiar no solo los temas de tu perfil en los que ya tienes experiencia, sino también familiarizarte con direcciones completamente nuevas para ti, si te inspiran. Quizás uno de ellos determinará el vector de un mayor desarrollo profesional.

Tienes que probar cosas diferentes. "La locura de hacer lo mismo, esperando obtener resultados diferentes" - Realmente me gusta esta expresión.

Los profesionales que desean estar "en la cresta de una ola", trabajar con tecnologías avanzadas, ganar más dinero, no pueden detenerse ni un segundo. Es importante para ellos monitorear las tendencias diariamente, estar interesados ​​en nuevos proyectos de la compañía y monitorear las tendencias actuales.
Pero personalmente, tengo un enfoque más romántico para la implementación profesional: me gusta disfrutar de mi trabajo favorito con calma, perfeccionar mis habilidades, si quieres "seguir la corriente", y obligarme a reorientarme hacia algo nuevo solo porque es popular, no mi estilo.

Source: https://habr.com/ru/post/445436/


All Articles