DevOps
Que Es DevOps?
DevOps es un termino que combina lo principios de Desarrollo (Development) y Operaciones (Operations).
Hace unos pocos años en el mundo the la Tecnología de Información y Comunicación (TIC) había una separación de responsabilidad entre individuos que practicaban operaciones, ingeniería, seguridad, desarrollo, y automatización entre otras cosas. Hoy día hay una mezcla de responsabilidades dentro de los equipos que comparten todas las actividades desde concepción hasta implementación de procesos. a idea es cooperación y fluidez. Así nació DevOps.
Al adoptar y mezclar los principios de DevOps se experimenta un mas alto rendimiento y confiabilidad de operaciones y desarrollo en general. Entre mas automatizados los procesos, se cometen menos errores. También se agilizan los procesos de implementación al introducir mejoras y cambios de una forma rápida, y metódica cuyo rendimiento pude ser medido y calibrado para mejoras futuras. El resultado es innovación continua.
Que Es Alta Disponibilidad?
El termino de Alta Disponibilidad (High Availability) se aplica a un ambiente en el que el tiempo de inactividad de sistemas es absolutamente inaceptable. El objetivo es asegurar la operación continua, sin interrupción y con un alto grado de confiabilidad.
Usualmente estos ambientes son de operaciones críticas en el que fallas resultan en graves interrupciones en acceso al cliente causando perdidas financieras. Clientes pierden confianza en un negocio que no garantiza la disposición de servicios continuos. Por ejemplo, imaginemos que pasa cuando vamos al sitio en linea de un banco y no podemos hacer una transacción de compra porque el sitio no esta disponible.
Luego entonces, la responsabilidad de ingenieros de DevOps es garantizar que la infrastructura del negocio es Altamente Disponible todo el tiempo.
Que Hace un Ingeniero de DevOps?
La gran mayoria de roles en DevOps caen en las categorias siguientes:
- Infrastructura: Fisica o Virtual
- Base de Datos
- Seguridad: PCI o non-PCI
- Desarrollo: Aplicaciones, Automatizacion, Mantenimiento de Codigo
- CI/CD: Integración Continua / Entrega Continua
Cuando vamos a un sitio de internet y buscamos avisos de trabajo usando la palabra clave “devops” nos encontramos con posiciones disponibles como las siguientes:
- Lider Ingeniero De Software
- Administrador de Base de Datos
- Ingeniero de DevOps
- Arquitecto DevOps
- Platforma de Nubes
Así que podemos ver que el termino se aplica a roles de varias disciplinas.
Todas las posiciones mostraran que se requieren habilidades similares pero alineadas con el rol especifico y las necesidades del empleador. Una cosa es clara: en la mayoría de los casos se requiere conocimiento de infrastructure, desarrollo, automatización, seguridad y métodos ágiles. En muchos casos sobresale el requerimiento de esto dos aspectos conocidos como CI/CD:
- Integración Continua (Continuos Integration)
- Entrega Continua (Continuous Delivery)
Con esos requerimientos, tocamos una area mas allá de lo básico.
Uno de los principios mas elementales de DevOps es que tenemos que actualizar nuestro conocimientos continuamente. Es imperativo estar al día con los desarrollos continuos del mundo tecnológico o corremos el riesgo de ser obsoletos.