Focos de atención
Ingeniero de Fiabilidad del Sitio (SRE), Ingeniero de Lanzamiento, Ingeniero de Automatización, Ingeniero de Integración Continua/Despliegue Continuo (CI/CD), Ingeniero de Infraestructura, Ingeniero de Construcción y Lanzamiento, Ingeniero de Sistemas (DevOps), Ingeniero de Plataforma, Ingeniero de Nube (DevOps), Ingeniero de Despliegue
Testhouse resume DevOps como una relación entre "personas, procesos y productos". En cierto modo, el puesto de Ingeniero de Operaciones de Desarrollo surgió como resultado de aprender de los errores. El software solía ser desarrollado por un equipo y luego revisado por otro, creando conflictos y confusión. Entonces apareció un concepto llamado desarrollo ágil para ofrecer a la gente una forma más colaborativa de hacer cambios. DevOps proporciona a las partes relevantes de desarrollo y operaciones un medio para participar en un proceso evolutivo más productivo. Como resultado, hay más estandarización, más control, más previsibilidad... y menos luchas internas disruptivas.
Los ingenieros de DevOps son como mediadores. Llegan durante el proceso y mantienen a todo el mundo en el punto de mira, asegurando que los objetivos se perfilan y se logran a medida que se realizan las actualizaciones. Deben mantener una visión de pájaro del proyecto en su conjunto, al tiempo que son capaces de acercarse a las funciones más pequeñas para ver cómo afectan al conjunto. Se confía en su criterio al evaluar los cambios y ofrecer ideas para mejorar la eficiencia y la eficacia. Otros títulos de trabajo pueden ser el de Director de Operaciones de Desarrollo, Especialista en Integración, Gestor de Lanzamientos o Ingeniero de Automatización.
- Trabajar con una visión global de los proyectos
- Servir de intermediario entre los equipos
- Gestionar el cambio de forma fluida, eficiente y eficaz
- Practicar una buena capacidad de liderazgo y gestión
Horario de trabajo
- El ingeniero de DevOps ocupa el puesto número 5 en la lista de los mejores trabajos de Estados Unidos en 2020 de Glassdoor. La demanda es alta, así que espera un trabajo a tiempo completo, como mínimo. La oferta de ingenieros altamente cualificados en este sector todavía no está alineada con la demanda. Las organizaciones confían en las habilidades únicas que estos trabajadores aportan en tiempos de transición. Es posible que se necesiten horas extras cuando los proyectos se retrasan o surgen problemas inesperados.
Tareas típicas
- Los ingenieros de DevOps se aseguran de que los usuarios obtengan lo que las organizaciones quieren que obtengan, sin interrupciones ni disminución de la calidad, incluso cuando se realizan cambios en las plataformas
- La gestión de la infraestructura es una responsabilidad clave, que incluye el desarrollo y el despliegue de aplicaciones
- Aplicación de los principios de la metodología ágil
- Construcción de la tubería de integración y entrega continuas
- Conectar los objetivos tecnológicos con las necesidades empresariales
- Enlace con los diferentes equipos
- Gestión de la seguridad efectiva y búsqueda de vulnerabilidades
- Utilización de herramientas de automatización para entregar el código en varios entornos
- Aplicación e infraestructura de planificación; pruebas y desarrollo
- Comprensión de las funciones de operaciones de TI y de administración del sistema; elaboración de estrategias de integración y despliegue
- Trabajar con herramientas de código abierto y bases de datos escalables
- Responsabilidades adicionales
- Respuesta y gestión de incidentes "de guardia"
- Garantizar el cumplimiento de los protocolos de la organización
- Optimización de procesos, personas y herramientas
Habilidades blandas
- Capacidad para facilitar la colaboración
- Capacidades de gestión del cambio
- Flexibilidad
- Atención al detalle
- Servicio de atención al cliente
- Decisividad
- Muy organizado; buena capacidad de gestión del tiempo
- Fuerte conciencia de seguridad
- Habilidades de liderazgo y gestión
- Paciencia y resolución analítica de problemas
- Gran capacidad de comunicación
- Orientado al equipo y centrado en los objetivos
Habilidades técnicas
- Integración continua
- Familiaridad con la automatización de infraestructuras
- Conocimiento de lenguajes de codificación, como Python, JavaScript, Ruby, Perl, C/C++, Go y Java
- Entender los contenedores (unidades estandarizadas de software)
- Agencias de diseño de sistemas informáticos
- Sociedades/empresas
- Agencias gubernamentales/militares
- Sanidad
- Centros de enseñanza superior
- Medios de comunicación y entretenimiento
- Autónomos
Las empresas confían en las habilidades blandas de un gurú experimentado de DevOps casi tanto como en sus habilidades tecnológicas. Se espera que los ingenieros de operaciones de desarrollo sean excelentes facilitadores de un cambio perfecto. Tienen la enorme responsabilidad de garantizar que los equipos puedan unirse para lograr objetivos que no siempre parecen ser comunes.
Cuando hay que introducir cambios rápidamente, el tiempo es esencial. Pero cuando se trata de escribir software, las prisas conducen a errores que no se pueden permitir. Ahí es donde entra en juego la cabeza fría y el poder analítico del ingeniero de DevOps. A veces se encuentra entre la espada y la pared, y debe encontrar la manera de superar todos los obstáculos, mediar en los problemas y hacer las cosas bien a la primera.
La automatización es el rey. Cuanta más automatización se pueda utilizar con éxito, menor será la probabilidad de que se produzcan errores humanos. Los ingenieros de DevOps necesitan la capacidad de analizar las prácticas de su organización y encontrar áreas para automatizar o lugares donde la automatización existente puede ser mejorada. Otra tendencia es pasar de los monolitos a los microservicios pequeños y escalables que son menos complejos de gestionar. La popular herramienta de gestión de contenedores Kubernetes de Google también está ayudando a muchos equipos de DevOps y seguirá haciéndolo en los próximos años.
Al igual que con cualquier función en el mundo de la TI, el avance interminable de la inteligencia artificial/aprendizaje automático seguirá afectando a DevOps y a los desafíos inherentes al manejo de conjuntos de datos masivos. La IA, utilizada adecuadamente, puede aliviar la carga y eliminar los cuellos de botella. Otros desarrollos actuales en el mundo de DevOps incluyen la migración a la arquitectura sin servidores y un enfoque cada vez mayor en la seguridad.
Los ingenieros de DevOps, al igual que otros profesionales de TI, pasan la mayor parte de sus días en el interior, trabajando en un escritorio y mirando pantallas. La mayoría eran ávidos aficionados a la tecnología mientras crecían, contentos de pasar horas frente al teclado del ordenador desentrañando los misterios del software y los lenguajes de codificación. Sin embargo, las operaciones de desarrollo exigen un gran don de gentes, lo que sugiere que los trabajadores no se pasaban el día sentados en sus habitaciones.
Por el contrario, es más probable que colaboren con sus compañeros, ya sea en persona o en línea. Las habilidades necesarias para este campo profesional requieren fuertes habilidades sociales además de una mentalidad objetiva. Los trabajadores que se interesan por DevOps probablemente fueron respetados a una edad temprana por su imparcialidad, racionalidad y talento para arbitrar disputas y lograr el consenso. Puede que se les diera bien el debate, así como el inglés, el marketing y el arte.
- Los ingenieros de DevOps suelen necesitar una licenciatura, preferiblemente en Informática o algo relacionado. A veces, las certificaciones y un buen abanico de experiencias laborales son suficientes, pero para ser competitivo, un título siempre queda bien
- Se sugiere un curso de migración de centros de datos
- Hay un montón de cursos y certificaciones disponibles para ayudarle a especializarse o a afinar su ventaja en el mercado laboral. Las opciones incluyen:
- DevOps Agile Skills Association (DASA), que ofrece tres niveles de certificaciones:
- Liderazgo - DASA DevOps Product Owner, Líder o Coach
- Profesional - DASA DevOps Enable and Scale, Specify and Verify, o Create and Deliver
- Fundamentos - DASA DevOps Fundamentals
- Ofertas de Amazon Web Services (atención, cuidado con los requisitos de experiencia laboral):
- AWS Certified Cloud Practitioner
- Administrador de SysOps Certificado por AWS - Asociado
- AWS DevOps Engineer - Profesional
- Ingeniero certificado en Jenkins
- Cisco DevNet
- Certificado por Microsoft: Azure Administrator Associate
- Profesional certificado de Puppet
- Especialista certificado por Red Hat en Ansible Automation
- Otra experiencia necesaria puede incluir Java, Python y Groovy; Microsoft Server, Linux, Apache, Bash; redes IP
- Aprende por tu cuenta con lo siguiente:
- CompTIA Linux+
- Cursos Coursera DevOps
- Cursos edX DevOps
- Oferta de cursos DevOps de LinkedIn Learning
- DevOps de Pluralsight: el panorama general
- Introducción a DevOps de Udacity y otros cursos
- Cursos DevOps de Udemy
- No te olvides de los cursos para desarrollar habilidades blandas en inglés, escritura, oratoria, trabajo en equipo y liderazgo.
- Hay muchas herramientas y habilidades que aprender para dominar DevOps. No todos los programas las ofrecen todas, pero busque programas que ofrezcan el mayor número posible de cursos aplicables
- ¿Hay profesores de prestigio? ¿Cómo son las instalaciones del programa? ¿Cuáles son sus áreas de investigación? ¿Cómo se financian? Los buenos programas hablan de estas cosas.
- Examine los índices de colocación laboral del programa después de la graduación, si se publican. Normalmente, si una escuela tiene algo de lo que presumir, publicará las cifras
- ¿Qué servicios profesionales gratuitos u otra ayuda para la búsqueda de empleo ofrecen?
- Asegúrese de que la institución está plenamente acreditada
- Los programas en línea tienen ventajas (como la accesibilidad) y desventajas (falta de actividades presenciales), pero el valor que obtienes está ligado al esfuerzo que realizas.
La lista de los mejores programas de informática de U.S. News & World Report de 2020 es un buen punto de partida. Recuerda que actualizan su lista cada año. Es bueno entender su metodología, porque lo que es importante para su clasificación puede no serlo para la tuya.
Recuerda que, aunque un título puede ser importante para una carrera de DevOps, los empleadores buscan conocimientos y habilidades específicas junto con la experiencia. No asumas que sólo graduarte en un buen programa será suficiente para conseguir un trabajo. Los certificados y la formación mencionados anteriormente pueden ser igualmente importantes para algunos empleadores. Todo depende de lo que necesiten, y las necesidades pueden cambiar.
La clave del éxito como Ingeniero DevOps es ser flexible, estar al día y adaptar tus estudios a las demandas precisas de tus empleadores objetivo. Toma la iniciativa de buscar la información de contacto de los ingenieros DevOps que trabajan actualmente en el lugar donde quieres trabajar y pregúntales directamente dónde estudiaron, en qué se especializaron, qué asignaturas optativas recomiendan y qué certificaciones adicionales y experiencia laboral sugieren. También puedes utilizar los hilos de discusión o los sitios de preguntas y respuestas como Quora para publicar preguntas (pero mantén un ojo en las fechas en que se escribieron las respuestas).
- Antes de empezar a buscar un trabajo, empieza a mirar las ofertas de empleo. Lee la lista de cualificaciones requeridas para los puestos que quieres tener, en las empresas en las que quieres trabajar
- Practica muchas habilidades, cuanto antes, mejor. (véase la sección anterior de Educación y Formación para las clases y los certificados que puedes hacer en tu tiempo libre)
- Recuerde que DevOps trabaja en medio de todo, así que mantenga la formación equilibrada
- Busca formas de poner en práctica las habilidades blandas necesarias, como participar en comités escolares en puestos en los que sea necesario el liderazgo y la gestión. No aceptes papeles secundarios
- Cuando tengas algunos trucos comercializables bajo la manga, empieza a ponerlos en práctica en sitios de trabajo autónomo como Upwork, para ganar experiencia práctica y remunerada
- Encuentra prácticas de DevOps en portales de empleo o pide ayuda a tu programa universitario
- Únete a ellos. Apúntate a clubes relacionados con las tecnologías de la información para ampliar tu red de contactos y relacionarte con otras personas que comparten tus intereses
- Encuentra un ninja DevOps senior dispuesto a tomarte bajo su ala y a ser tu mentor
- Conviértase en un maestro de la comunicación y la mediación
- Leer artículos y participar en debates en Quora, Reddit, Dev.to y otros espacios
- Realiza el test de selección de TripleByte DevOps. Si lo superas, obtendrás una entrevista con los empleadores de su red.
- Busca en portales de empleo como Indeed, Monster, USAJobs, ZipRecruiter, LinkedIn, Velvet Jobs y Glassdoor
- ¡Piensa como un reclutador! Lee el artículo de ZDNet "Ocho buenas prácticas para contratar a un ingeniero de DevOps"
- Dile a tu red que estás buscando trabajo. Pídeles que se pongan en contacto contigo con cualquier buena pista
- Pide al departamento o al centro de orientación profesional de tu escuela información sobre ferias de empleo, eventos de contratación, prácticas y otros tipos de ayuda, como la redacción de currículos y la práctica de entrevistas.
- Preste mucha atención a la experiencia y a las competencias requeridas en las ofertas de empleo
- La competencia es feroz, así que concentra tus energías en los puestos de trabajo para los que estás altamente cualificado, y adapta tu currículum a cada puesto específico al que te presentes
- Consulte los ejemplos de currículos DevOps de Indeed
- Nunca vayas a una entrevista con el plan de "improvisar". Lee las "86 mejores preguntas y respuestas para entrevistas de DevOps" de Simplilearn y prepárate para dejar una gran impresión.
- Curiosamente, no es raro que los trabajadores de este campo nieguen que "Ingeniero de DevOps" sea un título de trabajo real. Por lo tanto, averiguar cómo ascender en este tipo de entornos es un reto
- Algunas opciones después de DevOps incluyen trabajar como líder tecnológico, arquitecto o ingeniero principal. Hay muchas posibilidades y mucho depende del tamaño de la organización para la que trabajas (y de si estás dispuesto a irte y trabajar en otro sitio)
- Habla con franqueza con tu supervisor y con la dirección sobre tus deseos de ascender cuando llegue el momento. Mejor aún, pregunte qué puede hacer para que ese "momento" llegue antes.
- No te adelantes ni des la impresión de que sólo buscas un mejor trato. Demuestra lealtad y el compromiso de ganarte los ascensos con el trabajo duro
- Puede tener sentido hacer un máster, pero hay que entender que algunas empresas etiquetan sus programas de certificación como "certificados de máster" o "programas de máster"
- Estar al día de los cambios y las tendencias es imprescindible. Mantente al día o te quedarás atrás.
- Transmite lo que has aprendido enseñando a otros. Esto puede hacerse en persona, en línea, a través de artículos, hilos, vídeos, y más...
- Si te gusta mucho el marketing social, hazte una marca y genera ingresos con las visualizaciones de contenidos, blogs de marketing de afiliación, Google Ads o vendiendo tus propios cursos
Páginas web
- Blog de Atlassian
- Entrega continua
- Dev2Ops
- DevOps.com
- Podcast y vídeos del DevOps Cafe
- Cubo DevOps
- Días DevOps
- DevOpsGroup (on LinkedIn)
- Reacciones de DevOps
- Podcast distribuido
- Docker
- DZone
- Etsy - El código como arte
- Todo DevOps (en Reddit)
- iHeavy
- Revolución informática
- Microsoft Azure
- Mundo Red
- Podcast de Packet Pushers
- Marioneta
- La seguridad, ¡ahora! Archivo de episodios
- El espectáculo de la lucha por la comida
- El espectáculo del barco
Libros
- DevOps For Dummies, por Emily Freeman
- Mastering Python Networking, por Eric Chou, Michael Kennedy y otros.
- Python for DevOps: Learn Ruthlessly Effective Automation, por Noah Gift, Kennedy Behrman, et al.
- Manual de DevOps: How to Create World-Class Agility, Reliability, and Security in Technology Organizations, por Gene Kim, Patrick Debois, et al.
- El Proyecto Phoenix: A Novel about IT, DevOps, and Helping Your Business Win, de Gene Kim, Kevin Behr, et al.
- El Proyecto Unicornio, por Gene Kim
DevOps es un campo apasionante que funciona en medio de la acción cuando se trata de desarrollo de software. Sin embargo, algunos trabajadores prefieren ceñirse a un lado u otro. Mientras tanto, otros quieren especializarse en áreas distintas al software.
Algunas carreras alternativas a considerar incluyen:
- Desarrollador Front-End
- Desarrollador de Back-End
- Desarrollador Full-Stack
- Gestores de sistemas informáticos y de información
- Programadores informáticos
- Especialistas en soporte informático
- Analistas de sistemas informáticos
- Administradores de bases de datos
- Analistas de seguridad de la información