IasCode como habilitador de OpenBanking
Hace unos días participé del primer meetup del año de IasCode en Buenos Aires, para el cual uno de los organizadores me propuso un interesante desafío: contar cómo IasCode habilita a Open Banking. Siendo estas dos temáticas sin ninguna relación aparente, acepté el desafío, cuya respuesta fue la presentación que comparto a continuación:
Open Banking
Con el objetivo de introducir a Open Banking, sin la intención de ser muy profundo en la explicación, diré que es un nuevo paradigma o enfoque de negocio en la industria financiera y bancaria, que busca generar nuevos modelos de negocio (o ampliar los existentes) mediante la apertura de información entre las entidades que forman parte del ecosistema, siendo estas Bancos tradicionales (los que conocemos desde hace años), Nuevos bancos (bancos digitales), Fintechs, Fondos de inversión, Aseguradoras y Retails, entre otros.
Comenté que Open Banking se basa en compartir información sobre las entidades (o sus clientes) entre las partes del ecosistema, y agregaré que debe hacerse de manera controlada y segura (estamos hablando de dinero!). ¿Cómo se logra esto? A través del desarrollo de aplicaciones interconectadas usando APIs, pensando a las mismas no como componentes tecnológicos para interconectar aplicaciones, sino como productos en si mismo.
APIs como producto
Ya es un hecho que la economía de APIs es una realidad en nuestro presente. Este tema tiene una amplitud enorme que dará para varios posts al respecto, por lo que asociado a esta presentación me quedaré con que para que un API se vea como un producto, debemos tener en cuenta, como mínimo, maximizar:
- La experiencia de usuario, siendo él mismo seguramente alguien que no conozcamos nunca, ya que existe un nuevo nivel de indirección (el usuario final es quien hace uso de la aplicación que consume nuestras APIs!)
- La experiencia del desarrollador, quien es nuestro cliente mas cercano cuando de APIs hablamos.
- La capacidad de monetización. Nadie pagará por algo que no sea simple de usar y útil, y nadie cobrará si no se tiene una forma de contabilizar y controlar su uso.
- La capacidad de soportar nuevos modelos de negocio digitales, para lo cual tenemos que tener en cuenta como diseñamos las APIs, y como las mismas performan.
Todos estos conceptos tienen mucho que ver con como diseñamos y pensamos las APIs, pero también con capacidades tecnológicas base que debemos brindar como habilitador.
IasCode como habilitador de API as a product
Para que las APIs sean una realidad como producto, es necesario que desde IT brindemos capacidades básicas que sean la base para crear un entorno sano en el cual crear y acrecentar el valor de negocio de una iniciativa. De esta forma:
- No puede haber una buena experiencia de usuarios o desarrolladores sin una correcta gestión de la performance, viéndola como el rendimiento end to end, desde el usuario final (recordamos que es el usuario de la aplicación que consume la app), pasando por la performance de la aplicación cliente (responsabilidad de un tercero sobre el cual no tenemos control!) terminando en la performance de nuestras APIs.
- Debemos también asegurar la resiliencia, como la capacidad de recuperarse ante fallos, haciendo que los clientes de las APIs sufran lo menos posible por errores que inevitablemente sucederán.
- Como las APIs serán usadas por terceros sobre el cual no tenemos control, difícilmente conozcamos con antelación la carga real que tendrán que soportar nuestras APIs, por lo que es vital pensar la solución para que sea elásticamente escalable, amoldándose a los cambios de carga que los consumidores supongan.
- Cuando hablamos de OpenBanking hablamos de compartir datos sensibles, por lo que es necesario poner mucho foco en reducir los riesgos de seguridad, cuidando los activos que se comparten.
Todo lo anterior es completamente soportado por las siguientes prácticas de IasCode:
- Codificar la configuración de nuestra infraestructura como única fuente de verdad en assets versionados, habilita a que las capacidades que expongamos sean repetibles, escalables y robustas.
- CI / CD logra eficientemente asegurar el rendimiento, reciliencia y escalabilidad elástica, y al mismo tiempo eliminar el riesgo de errores por tareas manuales, ya que automatizamos todo lo que puede automatizarse.
- Es importante dividir los assets en pequeños pedazos que puedan cambiarse independientemente, reduciendo el impacto de los potenciales errores.
- La inmutabilidad de los componentes, hace que sea más simple eliminar un artefacto y volver a crearlo que modificar su configuración, sumado a que los artefactos son pequeños pedazos de infraestructura, habilita a que tengamos una agilidad inigualable.
Concluyendo
Como IT, y mucho más cuando hablamos de infraestructura y operaciones, muchas veces nos sentimos lejos del negocio, como en el caso de OpenBanking.
En un momento histórico donde casi cualquier modelo de negocio depende de tecnología y de como la manejamos de la manera mas eficiente posible, es vital que entendamos el impacto que lo que hacemos en el día a día tiene en las capacidades que la organización para la que trabajamos brinda a sus clientes, y pongamos foco en asegurar prácticas como las que propone IasCode o DevSecOps, convirtiendo a tecnología en habilitador del negocio, tal cual lo intenté expresar en el caso de OpenBanking.