Cuatro tendencias que marcan el desarrollo de software en el mundo
El final de 2019 es un buen momento para reflexionar sobre interesantes tendencias que estamos viendo en el ecosistema del desarrollo de software.
1. Acercamiento holístico.
Tradicionalmente los roles de un equipo de desarrollo eran bien demarcados, con una clara separación entre la actividad de cada uno. El programador centrado en su código. El tech lead planeando y liderando el equipo de desarrollo. La saludable tendencia que estamos viendo y adoptando activamente en BairesDev es el acercamiento holístico al desarrollo de software. Este no distingue entre los productos y los procesos que lo crean. Incluye cada etapa y herramienta del proceso: desde la idea, pasando por la programación, la implementación (“deployado”) hasta que la aplicación llega a millones de usuarios.
Todos tienen empatía por el rol del otro y se piensa la aplicación como un ser vivo que se está creando. La responsabilidad se distribuye entre todos y se evita el problema de que pase algo en producción y no se pueda encontrar al responsable del código.
2. Desarrollo cloud native y serverless.
Otra tendencia fuerte de los últimos años es el desarrollo cloud native: toda la infraestructura de desarrollo no está en máquinas locales sino en la nube. Puedo levantar un servidor AWS (Amazon Web Services), Google Cloud o Microsoft Azure y correr mi código como si fuera en mi máquina. Así, puedo configurar por ejemplo un servidor linux completo en la nube. Esta tendencia no muestra señales de retroceder, ya no volveremos al “servidor en mi placard”. Esto resuelve el problema del escalamiento: que se caiga la aplicación al llegar, digamos, al millón de usuarios. Con la infraestructura en la nube no necesitamos contratar gente para monitorear los recursos, esta aumenta automáticamente a medida que la aplicación lo necesita.
3. Equipos distribuidos.
La revolución de la arquitectura distribuida trajo como consecuencia un cambio humano: 2019 fue el año de los equipos distribuidos de desarrollo. Nunca antes hubo esta combinación de herramientas, ancho de banda y cultura para lograr que los equipos distribuidos sean más eficientes que los equipos locales. Pero los beneficios no son solo en productividad: los equipos se pueden crear mucho más rápido sin las limitaciones del mercado local, mejora la calidad de vida de los miembros del equipo y baja la huella de carbono cuando desaparecen los edificios corporativos y los viajes al trabajo.
4. Fintech y healthcare.
En cuanto a los mercados verticales, hay dos rubros muy activos en la demanda de servicios de desarrollo de software.
Por un lado, tenemos la explosión fintech, que no paró de crecer en 2019, generando una democratización en el acceso de servicios de pago y criptomonedas. El amplio espectro de la salud, desde la biotecnología y la industria farmacéutica hasta los hospitales, también está muy activo mejorando la calidad de servicio a los pacientes. El gran motor de esta innovación es un cambio radical en los servicios tradicionales de salud.
En conclusión, los nuevos roles en desarrollo, la arquitectura y los equipos distribuidos están cambiando radicalmente la manera de desarrollar software. Las organizaciones que adopten estos cambios rápidamente serán las que lleven sus proyectos a buen puerto con el mayor éxito.