Tras anunciar el mes pasado nuestra incorporación a la Cloud Native Computing Foundation (CNCF), pensamos que era el momento perfecto para sentarnos a hablar con una de las embajadoras más fervientes del sector: Cheryl Hung. Exingeniera de Google, al igual que muchos de los miembros de nuestro equipo directivo, Cheryl es vicepresidenta de Ecosistema en la CNCF y dirige la comunidad de usuarios finales de la organización (de la cual formamos parte). También fundó la comunidad de desarrolladores más grande y activa de Londres, Cloud Native London. Descubre a continuación cómo se alinearon nuestras pasiones y la necesidad de la tecnología en la nube para la banca central:

¿Por qué es tan emocionante el concepto Cloud Native?
Creo que es el movimiento tecnológico más importante desde el nacimiento de internet, si tenemos en cuenta el número de empresas que se han unido en torno a un mismo paradigma. Cuando llegó internet, todo el mundo tuvo que adaptarse. Y Cloud Native está teniendo un efecto similar en la infraestructura tecnológica.
A nivel personal, Cloud Native es donde empecé mi carrera en Google hace diez años. Es la forma en que Google lleva años creando software. ¡Es algo de toda la vida! Es lo predeterminado, la forma en que se hace todo. Así que he visto Cloud Native desde el punto de vista de la ingeniería y entiendo por qué funciona tan bien. Para mí es emocionante tomar estas ideas y llevarlas a otras organizaciones.
¿Qué entendemos por Cloud Native?
Es una mentalidad. Pasas de crear algo para que funcione en un único servidor o infraestructura, a abstraerte del hardware para desarrollar aplicaciones que puedan ejecutarse en cualquier lugar. Puede ejecutarse en Azure, escalar en AWS o estar en las instalaciones locales. La gente suele centrarse en Kubernetes y en las herramientas que utilizan las aplicaciones Cloud Native, pero fundamentalmente se trata de esta mentalidad.
Entonces, ¿es algo más que trasladar el software a la nube?
¡Por supuesto! Requiere replantearse fundamentalmente cómo se crea el software para que escale horizontalmente. También permite crear software resiliente, capaz de adaptarse a fallos de hardware sin que ello suponga un problema. El mito es que Cloud Native consiste en tomar lo que ya tienes y moverlo a la nube para ahorrar un poco en costes de alojamiento. Ese no es el caso en absoluto.
Los microservicios son comunes en las aplicaciones Cloud Native. ¿Por qué son tan importantes?
Un microservicio es una forma de dividir una aplicación en partes. Cada microservicio es una unidad autónoma que se comunica con otros microservicios a través de una API. Los equipos independientes son la clave. Si tienes, por ejemplo, 100 desarrolladores trabajando en el mismo software, se requiere mucha coordinación. Por eso divides la aplicación en partes. Así puedes tener, digamos, siete ingenieros trabajando como equipo en un solo microservicio. Pueden avanzar de forma independiente sin que otro equipo que trabaja en otra cosa los detenga.
Además, los microservicios aportan resiliencia. El problema de una aplicación monolítica es que todo está demasiado integrado. En el caso de un banco, si la parte de inversión se cae, puede arrastrar a toda la banca comercial. Por eso los bancos crean límites, para aislar departamentos que no tienen nada que ver entre sí. Los microservicios hacen esto a un nivel más fino y granular. Si un cajero automático deja de funcionar, ¡no debería impedir que la gente inicie sesión en la banca online! Los microservicios separan las cosas que no deberían depender unas de otras.
CI/CD es otro concepto fundamental de Cloud Native. Es algo muy importante para los bancos. ¿Por qué?
La integración y el despliegue continuos (CI/CD) consisten en la capacidad de actualizar el código a diario, o incluso varias veces al día, en lugar de esperar a realizar grandes actualizaciones cada seis meses aproximadamente. Esto implica pruebas automatizadas, la posibilidad de revertir a una versión anterior con facilidad y, lo que es más importante, que las actualizaciones se realicen sin tiempo de inactividad.
La idea básica es que es más seguro realizar cambios incrementales, ya sea una vez al día o un par de veces a la semana, que hacerlos todos a la vez dos veces al año. Cada cambio puede probarse y supervisarse. Si el cambio no funciona, se puede revertir. Por el contrario, el enfoque de "gran despliegue" que utilizan tradicionalmente los bancos es mucho más arriesgado. Si lanzas mil cambios de golpe y algo sale mal, es mucho más difícil identificar el problema. Antes de la CI/CD, los bancos eran muy cautelosos a la hora de actualizar su software debido al riesgo de fallo.
«Si un banco se queda estancado en una tecnología de hace 30 años, se quedará atrás».
Entonces, ¿la CI/CD mejora la capacidad de innovación de un banco?
Sin la CI/CD, los bancos sufren un problema. Hay equipos que trabajan con un calendario de actualizaciones de seis meses y otros que trabajan más rápido. Esto crea una brecha enorme entre ambos grupos, algo que he visto mucho dentro de los bancos. La CI/CD elimina esa brecha. Los bancos pueden desplegar actualizaciones cuando están listos. Les proporciona una sensación psicológica de seguridad al poder implementar pequeños cambios y revertirlos si es necesario. En ese sentido, la CI/CD fomenta la innovación.
Las herramientas nativas de la nube (Cloud Native) se comparten en toda la comunidad. ¿Cómo ayuda esta estandarización a los participantes?
¡Puedo darte mi experiencia personal! Cuando estaba en Google, usábamos Borg para gestionar contenedores en lugar de Kubernetes. Borg es exclusivo de Google. El problema fue que, cuando dejé Google, todos mis conocimientos y habilidades quedaron obsoletos, porque nadie fuera de allí utiliza Borg.
El universo nativo de la nube está formado por herramientas estándar de código abierto. Los ingenieros utilizarán las mismas herramientas cuando cambien de empresa. Esto facilita que las organizaciones contraten personal sin necesidad de un periodo de adaptación. Los nuevos empleados llegarán sabiendo cómo funciona todo.
¿Cómo contribuye la comunidad al éxito de las tecnologías nativas de la nube?
La comunidad es fundamental. Trabajar con herramientas nativas de la nube significa que puedes aprovechar la innovación que surge de contar con esta comunidad global de personas que, aunque tengan desafíos diferentes, contribuyen con sus soluciones a un recurso compartido. La Cloud Native Computing Foundation cuenta con más de 550 miembros, entre ellos Apple, eBay, Mastercard, Morgan Stanley y Ant Financial, y tenemos más de 90 000 colaboradores en los proyectos de la CNCF. Cuando utilizas herramientas nativas de la nube, te beneficias de esa experiencia compartida.
¿Qué papel desempeña la CNCF?
La CNCF forma parte de la Linux Foundation, junto con otras fundaciones dedicadas a temas como el blockchain y la IA. La CNCF se fundó para ser el hogar de Kubernetes. Es un entorno neutral que garantiza que ninguna empresa tenga una influencia indebida sobre las herramientas nativas de la nube. Tenemos una gobernanza abierta, por lo que cualquiera puede ver cómo se toman las decisiones. Además, organizamos eventos.
¿Pueden participar los bancos?
¡Por supuesto! Me encantaría que ocurriera más a menudo. Ahora mismo tenemos empresas como Adidas contribuyendo. No consideran que Kubernetes sea un tema comercialmente sensible. ¡Nadie compra zapatillas Adidas porque la empresa funcione con Kubernetes! Por eso siempre están dispuestos a compartir sus experiencias con la comunidad. Los bancos son más reacios. Pero deberían llegar al punto en que estén dispuestos a participar, compartir sus propias ideas y soluciones, y facilitar que sus ingenieros se involucren con la comunidad.
Usted también dirige personalmente Cloud Native London y el grupo de servicios financieros de la CNCF. ¿Qué se hace allí?
Cloud Native London es un grupo de Meetup. Es uno de los más grandes del mundo en el ámbito nativo de la nube. Fundé el grupo en 2017. Es una oportunidad para reunir a la gente una vez al mes, socializar y compartir experiencias. Obviamente, por el momento es una reunión virtual. El grupo de servicios financieros de la CNCF es un conjunto de empresas que se reúnen en línea una vez al mes para debatir los desafíos a los que se enfrentan. Algunos problemas son organizativos, como la forma en que los miembros logran que su empresa trabaje con código abierto y utilice Slack y GitHub. La otra mitad se centra en los retos técnicos. Por ahora, está abierto a quienes no son miembros de la CNCF.
En conclusión, ¿qué tan drástico es el cambio a las tecnologías nativas de la nube para los bancos?
Los bancos con sistemas heredados están nerviosos. Están nerviosos por actualizar sus sistemas. Están nerviosos por la competencia de los neobancos. Y deberían estarlo. Si un banco se queda estancado en una tecnología de hace 30 años, se quedará atrás.
Adoptar software nativo de la nube significa adoptar una nueva mentalidad. Puedes realizar cambios pequeños e incrementales para innovar rápidamente y ofrecer a los clientes los productos que desean. Puedes competir con los neobancos, que ya se están beneficiando de los sistemas nativos de la nube.
Es una elección. Los bancos pueden quedarse estancados en tecnología antigua y quedarse atrás, o adoptar las tecnologías nativas de la nube y mantenerse por delante de la competencia.
Thought Machine es miembro de la Cloud Native Computing Foundation.
Para obtener más información, visite: CNCF.io







