And I can create an account at a bank depending on the amount of funds I have in the bank across different accounts, I could move from 1 tier to another, and it unlocks different capabilities.
Everything from like a Netflix account or when those kinds of capabilities start showing up and you realize, well we cannot do that in our existing core and our competitors are doing it. What, what are your options, right?
But 2015 was like the year it kind of really hit over into the mass market. More than 50% of clients, of banks clients were using Internet banking, right, because of the accessibility of things like smartphones, right?
So that all makes sense.
And now, what you are saying is well, fintech’s added another pressure because not only was everything much more comparable, but they were innovating faster than the banks on the stuff that customers wanted to compare, right. So that makes sense now, why you want to have a catalogue now and a single way of defining products separately?
Going back to the previous question though which was really about like the spread, is it global or is it more localised? I asked that because when I was, I guess I am more focused on Europe, and in Europe, I see a lot more projects started not always finished in around core replacement but in the US, I just do not hear core replacement being even muttered.
It’s almost like there’s no point in mentioning because nobody wants to do it.
SD: That is absolutely right. Like, no one, none of the banks that I am dealing with in North America are even thinking about a core replacement. Everyone is thinking about core modernization. Some are thinking core modernization with a new core.
Some are thinking core modernization without a new core, but no one is thinking they are going to do a core replacement and they are just overly complicated.
DM: OK. And just to, again, I’m sorry, I’m taking a slightly different tack as well. On the modernization topic, we know that Zafin can help on the catalogue and the product definition side of things, right?
You also mentioned that you could go to another vendor for the customer management side of things. Is there any other kinds of modernization that people can do?
SD: Those are the first two starting points.
DM: Yeah.
SD: Yeah, the first two starting points are typically product catalogue and that means you know product, pricing, fees, and rates and offers and rewards and all of those capabilities and then the customer master.
Those are the two big blocks that I see most clients are, most banks are going down.
DM: And what about anything small?
I mean it’s funny because with tech companies they want to jump on a bandwagon, but they provide very niche components.
But I saw a company the other day that do market data distribution, right.
And they are essentially a layer on top of the Kafka, the messaging layer and they scale it really well and they take pressure off the legacy system. So rather than every single request going to the core banking system, they cache some of the data and they stop it almost at the edge of the network, right, and distribute from there.
And they have started talking about modernisation as well. And I am thinking, actually that is a form of modernisation.
It’s not a business modernisation like you’re talking about, like the catalog for the customer management, but it’s a technical modernisation of well, if the core can’t take all these new requests that are coming in, let’s take the pressure off and do it at this edge layer, which I thought was fascinating, and it kind of means that, there is this, it’s almost like CRM is a given for every kind of company.
It’s like modernisation is looking to start to be part of every kind of bank, I guess.
SD: Yeah, yeah, I’ve seen some of those as well and I have probably implemented some of them as well in terms of, when you think about the number of core systems a bank has and it is quite a few. And those systems of record are data silos, right?
The data is locked up in those different systems of record, and unlocking the data and streaming it out of those systems of record and making it available for querying for reading as a high performance cache after it’s streamed out and you could move all your reads from all your legacy application over to this new high performance cache.
You know moving reads off the legacy, especially mainframe, right? Moving reads off the mainframe and putting it against a cache that is near real-time has been a strategy that has been used many, many times, right. And it does work well.
If you are modernizing a customer master for example, you typically want to start by let me create a proper replica of this customer master in the modern state and I will coexist the legacy customer master and the modern customer master.
I’ll keep them in sync and then I will start by moving the reads off. Now I have all the reads are going to the modern one and I will see how things work and then eventually I will move the rights over, right.
But that progressive modernization of getting the data and saying moving reads over then slowly moving writes over mitigates risk because you could flip back and forth if you needed to, right?
DM : Great. And maybe one last question and we are going to drop into the technology now, right? Because I do like to try and appeal to as many people as possible, but I do love my technology too, right?
So when we talk about modern software versus legacy software, what does modern software look like?
What is it to be cloud native and APIs and what are the things that they should have a modern piece of software?
SD: Yeah, so a modern piece of software. Typically, you hear the word ‘cloud native’ very often, right? And what cloud native means is that I can run in the cloud and not just run in the cloud.
I take advantage of the cloud, right. And the cloud has a lot to offer, right?
It’s not just about “hey, I’m horizontally scalable and I can take advantage of the on-demand elasticity and I can horizontally scale up and down”. But it’s also about taking advantage of the services that the cloud offers.
If you look at Azure, you look at most of the clouds, they have a marketplace of services.
You want to take advantage of those services which are fully managed that you can instantiate with a click of a button. You want to leverage those services, so you don’t try to build those yourself.
DM: What services are those?
SD: Whether it’s a database, you mentioned Kafka, whether it’s Kafka, you want to use fully managed services that you turn on with a flick of a switch and not waste time on doing those things that are not critical to what you do, right?
DM: Right.
SD: So being cloud native is important. Microservices architecture and an event-driven architecture are also important. Microservices obviously you do not want to be a monolith. You want to be able to deploy multiple times a day. You want to give them squads that are developing the software, the freedom and full end-to-end accountability to manage their product and so on.
And people think about microservices and it is usually a technical discussion, it is actually less about technology, it is more about the how and the people and how you structure your teams and so on. And event-driven, because everything is moving to near real-time now and obviously Kafka played a big part in doing that and how you build software is so important, right.
Just like I said, microservice is more about the how, how you structure your team full stack squads into an accountability, use pair programming, use test-driven development.
Those are all aspects of modern software engineering that we need to adopt, right.
DM: So, I am going to try and summarize this for kind of business people.
Being cloud native means that you can take advantage of expanding the hardware for scalability and performance as well as the software for scalability and performance as well.
It means that you can take advantage of the facilities that are in the cloud, things like databases and stuff like that easily, right?
SD: Yes.
DM: Microservices mean that you are not writing one huge piece of software so that even if you make the tiniest of change then you have to ship the whole thing again.
If you ship the whole thing again, really you should have to test the whole thing, which means that you only do changes you know once a quarter at best. Sometimes once a year, right?
So it allows you then to deploy on a daily basis if you want to, right?
So changes can be much faster, but you are only making, you know, a small change means one component gets shipped not, the whole suite of software.
And then one moment, have I missed anything?
SD: No, I think event-driven?
DM: Event-driven, yeah that’s key as well because we’ve come from a world when people used to come into branches or they ring, but now literally they can get notifications and it’s a two-way conversation in real time that’s happening on your phone or any other device and therefore we’re doing more of it, right.
SD: Absolutely.
DM: So that has more pressure on the systems, but it literally means we can’t afford to go down.
And for people that are old as you and I, we know that some banks are still having to switch off their mainframes at night. So, they do their reconciliations over a batch window. I mean that this is just mind blowing for me that banks are still having to do that.
But yes, that happens that ledgers are being reconciled overnight and so therefore in that period, they cannot do anything really. People have come up with solutions that allow you to switch it off and then carry on temporarily on the outside, right.
But yeah, so this event-driven architecture is also really important for real-time world that we’ve kind of moved into, right?
SD: Absolutely,
DM: Absolutely fantastic. I feel like we have covered so much ground. We have defined legacy, we have defined modernisation, we have discussed some of the challenges of modernisation, and also the pros and cons behind it, the different styles of modernisation. We have talked about why banks, even with a new core, could benefit from modernisation.
And then finally we talked, really, about or defined what a modern piece of software is. What a valuable podcast you have helped me create. Thank you so much for your time!
SD: Thank you so much, Dharmesh. It was a lot of fun chatting with you.
DM: Absolutely.
DM: I look forward to the next one.
SD: Absolutely. Thank you so much.