Ir al contenido principal

¿Qué es DevOps?

DevOps es un término para un grupo de conceptos, que aunque no son nuevos, han experimentado un renacimiento y rápida propagación a través de la comunidad técnica. Como todo término de moda, (Cloud Compunting?), las personas tienen impresiones erradas y a veces contradictorias de lo que significa. Este artículo intenta dar una definición base de lo que DevOps representa.

Definición de DevOps

DevOps es un término relativamente nuevo para describir lo que también ha sido llamado como “administración ágil de sistemas” y también el trabajo y colaboración en conjunto de los equipos de operaciones y de desarrollo.
Puedes pensar en DevOps como la participación efectiva de los administradores de sistemas en el proceso de desarrollo de aplicaciones, utilizando las mismas técnicas ágiles que usan los desarrolladores.
Para este propósito “DevOps” no diferencia entre las diferentes sub-disciplinas de la administración de sistemas. Bajo el alero de “Ops” se ubican ingenieros, administradores de sistema, personal de operaciones, entre varios otros.
DevOps significa un montón de cosas diferentes para diferentes personas porque el “desarrollo ágil” en si mismo cubre un terreno bastante amplio. Algunas personas dirán que DevOps es “la colaboración de los departamentos de desarrollo y operaciones”, o que es “tratar tu código como infraestructura”, o “usar automatización”, o “usar kanban”, o una variedad de términos similares que se relacionan de una u otra forma.
La mejor forma de definir su significado en profundidad es comparándolo con la definición de desarrollo ágil, que según Wikipedia y el manifiesto ágil, se resumen en tres puntos:
  • Principios Ágiles - son los valores principales del movimiento, como: colaboración, personas antes que procesos, software antes que documentación y la disposición al cambio antes que la sobre planificación.
  • Métodos Ágiles - procesos específicos para implementar los principios ágiles. Iteraciones,Lean, Programación Extrema (XP)Scrum. En resumen, todo lo contrario al “Desarrollo en Cascada”.
  • Prácticas Ágiles - técnicas usadas a menudo con el desarrollo ágil, pero que no son requisitos. Como puede ser el Test Driven Development (TDD)Integración continua (CI), etc.
Al poner atención a lo que las personas hablan acerca de DevOps, podemos ver que se relacionan fuertemente con los puntos anteriores:
  • Principios DevOps - Como debemos pensar diferentes sobre operaciones. Ejemplos incluyen la colaboración entre administradores y desarrolladores, “infraestructura como código”, etc.
  • Métodos DevOps - Procesos que se usan para realizar operaciones ágiles, como iteraciones, lean/kanban, reuniones de 5 minutos, etc.
  • Prácticas DevOps - Técnicas y herramientas específicas usadas como parte de la implementación de los procesos, como herramientas de automatización (Puppet, Cheft),continuous deployment, sistemas de monitoreo (Nagios, Zabbix), y cualquier aplicación que tengas en tu “caja de herramientas”.
Si nos guiamos por esta conclusión, de que DevOps consiste en traer las prácticas del desarrollo ágil a la administración de sistema y el trabajo en conjunto entre desarrolladores y administradores de sistemas, vemos que DevOps no es una descripción de cargo o el uso de herramientas, sino un método de trabajo enfocado a los resultados.
DevOps es un término que está sonando fuerte, prueba de ello es la fuerte demanda de Ingenieros DevOps, pero no te dejes engañar, tal cosa no existe. Lo que si existe es tu experiencia y tu disposición a trabajar en equipo usando múltiples sombreros para sacar adelante los desafíos.

Comentarios

Entradas más populares de este blog

7 aplicaciones para gestionar proyectos de forma eficiente

¿Estás trabajando en equipo pero todo es un caos? entonces deberías probar estas aplicaciones para gestionar proyectos que te ayudarán a organizarlo todo. Shutterstock Sin duda  trabajar en equipo  es una tarea que generalmente se nos complica debido a problemas de comunicación, sincronización de tiempos, bajo presupuesto o falta de organización, lo que repercute en el resultado final o en la calidad del trabajo realizado. Afortunadamente ya no tiene que ser así. La tecnología ha permitido que hoy en día tengamos muchas herramientas digitales de donde escoger. Éstas nos permiten estar a cargo de tareas y administrar nuestro tiempo para  trabajar con otras personas sin necesidad de estar físicamente en un lugar . A este tipo de herramientas se le conoce como  aplicaciones de gestión de proyectos  y hoy te traemos las mejores opciones que existen para que puedas empezar a organizar tus tareas. Trello Trello  es la aplicación por defecto...

Crea una página profesional en minutos con Google Sites

Google  tiene de todo . Además de buscador, cuenta con un portal de vídeo (YouTube), un atlas geográfico (Mapas), una suite ofimática (Drive), un cliente de correo electrónico (Gmail), un espacio donde compartir tus fotos, una tienda de apps (Google Play)… Con Google incluso puedes  poner en marcha un blog  en segundos gracias a  Blogger . Entras, te registras, configuras una plantilla y sólo tendrás que crear contenido. Apenas requiere mantenimiento. Por otro lado, si eras  cliente de G Suite , antes Google Apps, además de contar con espacio en Drive, correo electrónico Gmail, calendarios y otros servicios enfocados a la empresa, podías crear  la página web de tu negocio  usando Google Sites. Los usuarios particulares, o quienes no querían una suscripción de pago a G Suite, para montar una página web con Google debían  acudir a Blogger o al espacio gratuito que ofrece Drive . Pero desde hace varios años ya es posible usar Google Sites p...

Sailfish OS certificado como alternativa a Android en Rusia

Los finlandeses de  Jolla  están de enhorabuena, especialmente si recordamos que no hace mucho estaban casi en la bancarrota, tras embarcarse en una aventura algo arriesgada para la fabricación de tablets. Ahora la vida les sonríe: las autoridades rusas  han certificado  el  sistema operativo Sailfish OS  para su uso por parte del gobierno y corporaciones del país. Se trata de un sistema con base open source ( Linux ), pero con una  capa privativa  presente en algunos de sus componentes como puede ser la interfaz o determinadas aplicaciones. La gran ventaja de Sailfish respecto a otros competidores en el mercado del smartphone –como el ya desaparecido  Firefox OS  o  Ubuntu –, es su  compatibilidad con las aplicaciones de Android. Las intenciones de Rusia es  reducir el uso de sistemas operativos extranjeros  (Android, iOS) en móviles del 95% actual  a la mitad en 2025 . Disminuir la  dependen...