Red Hat Blog
Java has a long history with banks and financial institutions, but what about its future? Does Java have a place in a containerized, cloud-native future? We'd argue yes, especially with Quarkus a full-stack, Kubernetes-native Java framework.
Earlier this year, Java celebrated its 25th anniversary. As customer needs evolve, Java continues to stand the test of time, being one of the most in-demand and useful programming languages used in a variety of business applications. Banks and financial institutions, which are well-known for being conservative in the use of technology and hesitant to change, were early adopters of Java. They liked its stability, security models and innovation it has allowed.
In the 25 years since its release, Java has become an important language and platform for financial institutions. You'll find it running important workloads in many banks and financial institutions. When asked to choose between starting over or updating their existing applications to use cloud-native platforms, banks are likely to choose updating. With the introduction of Quarkus, banks can now continue to leverage Java, while also remaining competitive and innovative in the cloud-native, modern world.
History of Java in FSIs and Banks
Java was chosen as the programming language of choice for banks because of its portability and its safety features compared to other popular languages at the time. Java's language features are designed to limit access to data and to provide a number of memory safety features that help reduce vulnerabilities introduced by common programming mistakes. Memory management can also become easier with the use of Java, through automatic garbage collection. Another key feature of Java is its portability and compatibility, upholding the “write once, run anywhere” slogan by being able to run in a backward-compatible version of a Java environment, regardless of platform or architecture. For example, a Java programmer could write and compile a Java program on a Mac, and then run it on any other operating system, like a UNIX system, without having to make any changes to the source code. In this way, it is considered one of the more secure programming languages, which of course is crucial when it comes to storing sensitive and personal banking information.
Implementing Quarkus in Banks
While Java has been the programming language of choice for banks for much of the past 25 years, technology continues to evolve, and banks must evolve with it, or fear getting out-paced by competitors.
Banks are traditionally reticent to change, so when faced with the option of completely rebuilding from scratch or overhauling and updating existing systems, the answer should be clear: it takes fewer resources and is less time consuming to update current systems. And with Java being the language of choice for developers working in banks, it makes sense that Quarkus would be used when it comes to modernizing banks technology infrastructure.
Quarkus is the Kubernetes-native Java framework that allows Java developers to write in the language they know and love, while being compatible with modern, cloud-native app dev components such as containers, microservices and serverless. For banks and financial institutions in particular, the use of Quarkus enables systems to be modernized without requiring developers to learn a new programming language, or there to be any new systems overall.
In fact, because Java is so widely used in banks, introducing any new, non-Java framework would be too risky of a move. Quarkus up-levels existing systems, apps and institutional knowledge, so there should be less resistance to introducing it. Quarkus will breathe fresh air into the existing Java frameworks in place at banks, and given how it was designed for ease of use, be a smooth transition for developers.
Quarkus could also help solve some of the problems caused by older systems - whether they are too slow, take up too much memory - and therefore are not cost effective - or not compatible with newer frameworks and apps. Quarkus also has the potential to help banks transition to a hybrid cloud future, through its container-first design.
An example of a financial services organization benefiting from Quarkus is Finnish-based Asiakastieto, an organization which helps banks and fintechs to modernize through data innovations. With the introduction of Quarkus, the fintech organization has seen faster application development and increased developer productivity on Red Hat OpenShift, thanks to a significant reduction in resource utilization. Asiakastieto tests show that memory footprint was reduced by more than 90%, throughput was improved by 25%, and CPU consumption was reduced by about 70%.
Looking ahead: the next 25 years of Java
There is a reason that Java has stood the test of time and continues to be so widely used in banks - in addition to being considered one of the more secure programming languages, it is also one of the most resilient, and one of the foundational programming languages for innovations in the banking industry.
There is a heavy reliance on Java developers in the industry, and jobs for Java developers continue to flourish. Quarkus will allow Java developers in banks and financial services institutions to continue to innovate, while being increasingly productive, and also bring the banks into the cloud-native future. It is becoming increasingly clear: Java just continues to get stronger, and banks will continue to leverage it for their mission-critical and day-to-day activities.
About the author
Leon Matthews is a Senior Solutions Architect for application development stack at Red Hat and has more than 20 years of experience in Middleware pre-sales, covering both the IBM and Red Hat product sets within the financial services industry. He also has experience in architecting and building large scale BlockChain applications for the procurement sector. Enjoy coding in many languages including Node-js, C, C++, Java, GoLang, and dabble in front-end technologies like React and Angular.