One of the best things about M|17, MariaDB‘s first user conference, was hearing neat use cases from the APAC region. These folks flew a long way and their stories were worth hearing - case in point, DBS Bank.
With 17,000 employees, DBS is the largest bank in Singapore. Forbes noted them as first in total assets of $322.8 billion in 2016 - number one in Southeast Asia. Their proclaimed ambition: to be the "world's best digital bank," as they were recently dubbed by Euromoney.
DBS Executive Director of Technology & Operations Joan Tay told their story during a MariaDB keynote. Later, I talked with Tay and Madan Sugumar, Vice President, Architecture, Engineering & Innovation at DBS Bank. They told me about their ambitious open source and microservices plans. Behind that is a firm belief that a DevOps style enables DBS to serve customers better.
"I've never heard a bank talk about 'fail fast' before"
I couldn't help but ask about a "fail fast" comment from Tay's keynote. "I've never heard a bank talk about 'fail fast' before," I joked. Tay, whose full name is Ms. Joan Tay Kim Choo, says it's the opposite. She wanted the MariaDB audience to understand: they didn't jump into the open source deep end.
When I added that slide, I told them I have to talk about this, because otherwise it's not contextualized. I don't want my audience to think that we went to open source just like that. We thought through failure and success, and how we support people for trying.
Sugumar, who has been an advocate for moving DBS into open source technology like MariaDB, added:
We can really only take a calculated risk. Even our failures need to be calculated.
"We want to drive more customer excitement"
Things weren't always this way. A few years ago, DBS was chugging along, running their infrastructure in a classic style, on two dominant databases of the household name variety. So why the change? Tay:
Our story is really about wanting a change in our application stack. We want to drive more customer excitement, but at the same time simplify our technology environment. It wasn't easy, because there was a lot of legacy application tech we had to work with. So we needed to start to peel the onion.
Sugumar says it's about the open source/cloud agenda. That means working with database vendors that are "cloud friendly," from deployment to licensing. Tay was quick to tie that tech change into customer experience:
When we talk about the end customer, we needed to innovate fast. We needed to adjust to the demands of our clients. For example, they need to scale fast. We needed to make sure our mobile apps can run on various database sources. We needed to make sure we can have the flexibility to scale up and down when we need to. We needed to be more nimble for our customers.
Tay cited the example of a big event: National Day in Singapore. That means triggering alerts to 4.5 million customers in Singapore. And, as Sugumar notes, they needed to do this without cost escalation: "Cost [control] is a major contributor for this journey."
So, three years ago, Tay's team started with open source, including MariaDB. They started with simple, less crucial applications. But that changed:
Eventually we saw that the MariaDB platform is very very robust, with no failures, so we built.
After six months, they had several apps running on MariaDB. At the end of 2016, they were closer to twelve, still mostly "non-critical applications." But this is about to change: in 2017, many "tier one" and "tier two" mission critical applications are moving to MariaDB - including the big kahuna, Internet banking. Tay and Sugumar are excited they've reached this point, but there are big go-live moments ahead.
"Open source is more than just downloading a tool"
The technology wasn't the only thing that had to change. Tay needed to change the team's approach also. The DBS infrastructure team had a few DBAs who were experienced with traditional SQL databases. But - they were eager to learn new approaches. Sugumar:
We started with a small team, working on the non-critical apps. From there, we started to work on more applications.
Next up: conquering a payments app. Payment assistance is a key DBS service, so there was plenty of pressure to get it right: "That's when we started to really gain confidence." says Sugumar. The payments app went into production at the end of 2016.
Downloading an open source tool and trying it is the easy part. The harder part comes next. Sugumar:
How do you support it, how do you retrain the people - all these things. And how do you share from an open source community, and share within a bank the bug fixes... It's actually a whole lot of processes that you put in place. It's not just introducing a product.
And was it difficult for these DBAs to pick up MariaDB? No, says Sugumar:
They feel MariaDB is a lot easier. I think maybe because Monty [father of MariaDB and co-founder of MySQL] designed this for developers. My developers find it very easy to pick on and learn.
Open source means knowing the pros and cons of each tool you use. Make sure the use case fits:
If you want to [add a tool] to an open source stack, to me, it is not "learn the strengths" but "learn the weaknesses," so I think when we started with Maria DB, we already knew about both. We designed our applications [along those lines].
From change to results
There is still a ways to go for a full migration to MariaDB. Is it too early to talk about results? Tay calculates that when they move all their infrastructure to MariaDB and Linux, they'll be looking at a cost savings of somewhere between 30 to 70 percent, depending on the app and workload. With the apps they've already moved, they are already experiencing some of that savings.
The cost savings are just one factor. It's the "business agility" that's really driving this. The logical next step for this DevOps approach? Microservices. Turns out the DBS CIO is leading the way. A couple years ago, their CIO visited digital giants like Amazon and Google to learn about how they scale, and their pursuit of DevOps and microservices. He brought that vision back to DBS.
Engineers from Amazon and Google also visited DBS' Singapore offices to share how they transformed their IT services model. "They motivated us a lot," says Sugumar. So what was Sugumar's first response to microservices? "I didn't believe in it," Sugumar tells me, laughing. But that's all changed: "Now we push for it."
A whole new IT mindset - serving customers with microservices
I talked with Tay and Sugumar about the concern some engineers raise with me, that microservices can create a different kind of chaos. DBS manages this by rolling out sets of microservices that support a single business process, and doing it gradually. Sugumar says if you do this right, you can empower s small coding team to roll a service into production quickly:
You need to strike a balance between breaking it down too granular, at the same time managing a piece of code with a team of five or six people.
It's a customer-driven model. Sugumar used the example of authentication, which will eventually be broken down into a set of microservices. Design-thinking-style, it starts with a goal: "How can we make authentication easier for our customers?" Then the services are designed to meet a customer experience goal. There could be a separate set of services for making it easier for customers to open accounts.
This all fits into the DevOps philosophy Tay and team have embraced: continuous improvement, or, in their case, CICD - continuous integration, continuous deployment. So does this mean DBS is now a true DevOps shop? Tay is optimistic:
We are on a journey, we definitely on a journey.
Sugumar doubles down:
We'll be there, yes.
However it pans out, it's a journey worth watching.