Bringing Cloud Technology to a Financial Institution
Working in a large organization differs from being a part of a small startup. The contrast is even sharper in the financial sector with all of its potential compliance, legal, risk, and fraud issues. Diego Blanco, Former Open Platform CTO and currently Digital Channels Director at BBVA in USA, and I discussed the challenges he faced when he tried to integrate cloud technology into existing BBVA software.
From Spain to the United States
Diego Blanco started as a computer engineer in consultancy companies in Spain. Later, he specialized in testing, helping a British company develop strategies for testing software. In 2010, Diego moved to the financial industry when was offered to join First Spanish Bank as a program management officer.
From there, he moved to BBVA in Spain, where he was challenged to create integration-based services for one of its banks in Chile. Thus, Diego got the hang of APIs:
“That project opened the doors to get a call from BBVA in the US, where I was invited to join as a technical leader of a very ambitious API platform that would allow us to integrate with different customers.”
From the start, Diego was able to see things at a broader scale than many people do. Therefore, he wanted to get rid of data center limitations and use cloud technology instead.
Diego says that one big difference between large and small companies is the degree of liberty they allow. In a small company, each person is often authorized to make decisions about how to do things. In contrast, at large companies, when the software is not created from scratch, all innovations need to align with the existing platform and can’t break the established work of all its components. Fortunately, the BBVA system has been built in a modular way and this simplified providing transformation.
Being a part of an institution often limits the employees to more than just existing frameworks and architectures, but ways of doing things:
“Technically, there is a lot of restrictions how to perform these new functions. Culturally, there’s even more because you need to deal with a lot of colleagues here that perhaps have not been that much exposed to become a Financial Services provider, or they haven’t had the opportunity to work on that. There is a cultural challenge.”
Diego had to educate his non-technical colleagues about the cloud, what it means to store information on the cloud, and why it’s worth doing. But Diego admits that the same people taught him a lot about the legal aspects of business. Discussing their fears regarding the cloud technology, he learned a lot about compliance and regulation.
“Largely 80 percent of my work was to ensure that our platform could be out there [in the cloud] with all the benefits and [with] the approval of everyone while being compliant with strict Financial regulations.”
First, Diego needed to find out which cloud provider could best help BBVA:
“At that moment, AWS from Amazon brought some of the best speed for what we needed to be doing. [In] 2014, the companies were not offering the vast array of tools and platforms as they offer today — at the level [to which] Google has or Microsoft has evolved. Amazon became a great bet for us. We went there.”
The second step was creating the best technical safeguard for their services. Building an API platform in general requires a lot of capabilities around provisioning, quality of services, access control and throttling among others. At that time, not all the platforms were able to provide the degree of control Diego wanted on the platform so they decided to use some in-house developments to support certain functions. As a whole and after several tries, the team managed to get a platform that covered all of them.
“Perhaps today, with the existing capabilities in the cloud or in-house, we could [make] a different decision, but that [seemed] to be the best, and in the long term, I think it has been a great option.”
Diego prefers to focus on Java and Python on the backend. Each piece of technology was used where it was most suitable and was added as needed to address different programming challenges. However, to this day, Diego doesn’t think that they need to develop all pieces themselves. This approach would slow down the development of the platform. He provides an example:
“Cloud has evolved in such an amazing way that when we needed a way to manage new requirements there were several brand new alternatives to test and integrate with a wider range of requirements that our initial ones. We found very useful capabilities around ciphering, queue management, serverless processing, non-relational databases… we could find a problem and think of a solution to be built by the teams and compare with integrating a cloud solution almost at the same time. And integration was most of the times way faster to get what we needed.”
Instead of developing the solution in-house, they just had to integrate AWS services into their platform.
Scaling the team
When Diego started working on the API platform, there was only one developer on his team. In a year, the BBVA development team included 60 people and is distributed around two countries, the United States and Spain. There are two locations in each country.
“We have 20 percent of the team here in the United States and 80 percent of the team working remotely from Spain.”
The company’s main challenge was to manage the nine-hour time difference between product owners in San Francisco and the Spain-based team. Diego says that they distributed the team into tribes to leverage all capabilities. Each tribe included business analysts, technical leaders, and developers. It also included the team that was integrating the API platform with the backend systems.
“These teams were responsible [for ensuring] that everything that was being done was properly aligned with all the projects, all the initiatives. The teams were pretty much self-organized.”
According to Diego, it took around one year to fine tune this model of growth:
“When we moved from five people to 25 almost overnight, it took some time to adjust. Eventually, it was the model that worked like a charm.”
The team uses Agile methodology and eventually managed to get to the point of having a deployment on a weekly basis. Diego believes that one-week sprints are more efficient than wider timeframes are. When something has to be released, every week the development team sees results and shows progress to the product team.
“Sometimes we were successful, sometimes we were not. But this created certain good [instruction] the team. All the [processes] were] pretty much streamlined.”
Best practices to build APIs
Diego believes that REST architecture and the JSON format are the best decisions for APIs. The quality of the API is also fundamental. According to Diego, API should have the capability to manage and mask any issue happening underneath being on own platform or being on a platform integration.
“Create your own API layer with the documentation and [make] it so that your customers can access that.”
Diego recommends that any platform that integrates with other software have, at least, an API that can wrap integrations. This might be critical when it comes to changes from any side:
“If you need to change any of the pieces, or [if] the provider is giving you some solution, this [API] alleviates any pressure about changes. That’s what the API does.”
At BBVA, they have created a sandbox where developers can play around with APIs. They created a fake backend where they can interact with applications that are similar to the real thing.
“It was challenging at the very beginning, but basically, it was a great deal because you could create your customers, your accounts, your cards, [and] you could send money. It gave any developer the possibility to create a solution that would be based on those APIs on the sandbox that would allow you to move on.”
What motivates him the most
Diego likes challenges. He moved from Spain to the United States because he saw the challenge in creating the first API financial platform and connecting the cloud with its backend.
“It was the bigger challenge that I [desired]. It has been very rewarding, learning about how things work in the United States, first because I was not as familiar as I was with the Spanish regulations and all that.”
In 2015, the team successfully provided the first integration with Dwolla, an online payment system.
“Later, the challenge was to keep the ball rolling and to grow it and to allow it to get to the next level and bring in more and more customers. That has been a constant motivation for me.”