As a result of my project to build out banking infrastructure from the ground up I am reaching out to people in the finance industry. Recently while visiting the always amazing Cape Town, the Chief Technology Officer of 22seven Kenny Inggs was kind enough to sit down with me and have a chat.

The following post will include large amounts of insight from our chat, as well as more general thoughts on the industry at large.

Finance software is closed

From having worked professionally as a software developer for the past decade I have come to expect a certain level of openness around companies and their software stacks, technology and implementation. Some of the most established companies have allowed massive insight into the inner workings of their technology, including open sourcing large parts of their code.

The finance industry, however, is vastly different. It has become clear to me that almost everything around their technology is proprietary and secretive. This stems from the banking industry being so old, and their software along with it. Thirty years ago it was beneficial to keep the inner workings a secret as it gave an edge, but this has changed. A lot of financial companies still run on that same software and have to pay maintainers a ridiculous amount to update (side note: perhaps I should learn COBOL).

Finance software is outsourced

Most banks have their own mainframes, but the vast majority of service providers don’t actually provide the service themselves. That is to say, due to overhead having been high, financial institutions opted to rather outsource functional requirements - payments processing, bond issuance, card management, etc.

The reasoning for this is quite clear: many years ago, the barrier to entry for building this out in house was massive and carried a lot of risk. This risk has been minimised substantially, and the implementation can be done by developers with a fair degree of competence.

One of the ideas around building out banking infrastructure is that by building out the banking core from first principles, costs can be reduced at all levels, improving the customer experience as well as profit margins.

Currently, banking institutions do twice yearly deployments (?!). In most software companies, irrespective of scale, that is incredibly slow. A codebase with a large overhead would be deployed at a slow cycle of two months. This blew my mind, and explained why the pace of development in this space is so stunted.

Banks currently are built around batch processing. This is due to the way it was developed in the 70s, and has not changed since. Flat files sent over a channel (e.g. FTP) are then received and processed in bulk. This is a significant barrier to real time processing (at an infrastructure level), and if this could be fixed would have large ripple effects on the banking experience, and (again) profit margins for the financial institution.

Creating a bank

Kenny relayed some of the history to the run up of 22seven. During some tenures, himself, Christo and others built out banking infrastructure. With delays it took just over a year. This is a remarkable timeline for rebuilding something so ingrained, which brings me to the next point: creating a bank has less to do with the core than with the ecosystem. Said in another way, developing a bank depends more on partner integration than the core.

Integration with plugins

Kenny and team managed to build out the bank, open it and serve customers. They quickly managed to get tens of thousands of customers onboard, using two R20 million datacenters to support their system. This was over a decade ago, and at the time their supporting bank fell flat. This resulted in them not only losing their funding, but also their ability to operate. They had been using the backing bank to do their business, and without their license were now barred. Unfortunately this could not be rectified at the time, but great things eventually came out of this.

Running a bank

A great insight was that banking currently is mostly debt driven. That means that in order to make more money, you get customers to take on debt at high interest. Having this as your primary income is not ideal for a few reasons, and is one of the issues with the current situation.

In an ideal world, banking would shift the focus from squeezing customers for every penny to giving customers extraordinary value. Indeed, this is the ideal for any company. This could be achieved, some of the ways being:

  • Cheap transactions
  • Great UX
  • Customer service
  • Managed investments
  • Real time answers and transactions

The above all center around the introduction of value and the saving of time. Simple to list, difficult to implement.

Regulations are also a significant barrier to making the most of a possible bank. As in most established industries, a heavy weight of regulation exists and tends to restrict actions with the intention of consumer protection. This has some negative effects, which includes the limitation of innovation in some of the major spaces.

The regulations can be relaxed given the right situations, so I think this problem can be tackled and some breakthroughs made. This is a fair undertaking though, and I’m not sure the upshot is enough for any of the established banks.

Branches and ATMs was listed as a barrier to entry. As time progresses, branches are definitely becoming less important. Consumers are actively avoiding going into branches, and as banks catch up businesses are being enabled to do more of their function without the hassle of going in. In the future, branches will be more like showrooms, advertising their presence and showcasing their products.

ATMs are necessary, and will continue to have a presence in the future. However, the world is undoubtedly becoming less cash oriented and digital adoption is growing rapidly. “Cash is king”, but I am unsure of how long this will last. In any event, ATMs would have to be present for the next decade or so, and either deals will be reached with existing infrastructure providers, or a network of ATMs will have to be built out. If the latter option is taken, this is still a significant barrier. The level of ATM deployment is especially dependent on the LSM and the country’s technological adoption, so this will factor in.


The chat and subsequent research into the industry opened up a fair amount of insight. It turns out that banking can be pretty boring, and the exciting bit is the interaction with the customer.

For me, and a few others, banking can be really exciting - even the boring bits. Armed with this new knowledge, I will continue to drive the project in the right direction, avoiding some of the pitfalls faced by other companies, and aiming for the right targets along the way.

If you are in finance, I’d love to chat. The insight gained from the conversations I have had with institutions and employees has been immensely beneficial.