Bank Card Embossing App Evolution for a Global Fintech Company
About Our Client
The Client is a European fintech software product company offering SaaS business solutions for banks, payment service providers, and ecommerce merchants. The companyâs portfolio spans 40+ customizable products used by more than 350 organizations in 120 countries.
Specialized Bank App Development Skills Needed Urgently
One of the Clientâs banking software products is a card embossing app that is used to manage the card issuance process. The app provides intuitive interfaces for bank employees to enter card details, personalize card design, plan ID elements (EVM chips, magnet stripes, etc.), and control embossing progress. To automate card data sharing and enable real-time view into embossing status, the app requires integration with banksâ databases and card embossing machines. The Client provides managed product customization and support services to adapt the card embossing app to each bankâs embossing software-hardware system.
While the Client had an in-house team for handling card embossing product development and maintenance tasks, a sudden resignation of a senior Java engineer posed the risk of delayed deliverables and issue fixes. Turning to a third-party vendor for team augmentation was the quickest way to fill the resource gap and avoid delays.
At that time, ScienceSoftâs talents were working on the Clientâs payment gateway development project. They earned the reputation of goal-driven, easy-to-cooperate professionals with a solid background in building banking software, so the Client also decided to seek Java skills at ScienceSoft.
Java Competencies to Evolve a Bank Card Embossing App
It took ScienceSoft only one day to pick the best-qualified Java development candidates and provide the Client with a tailored pack of CVs. After interviewing the pre-selected talents, the Client approved our senior Java engineer, whose track record in enterprise-level fintech projects appeared to be a perfect match for its needs. After joining the project, ScienceSoftâs developer began studying the card embossing appâs documentation and exploring the Clientâs development environment. In two weeks, he fully integrated into the Clientâs workflows and adjusted to the teamâs communication flow.
Throughout the cooperation, ScienceSoftâs Java engineer has been involved in the following application tasks:
- Card embossing app rollout. Our developer helps the Clientâs banking customers deploy the solution on their cloud and on-premises servers and integrate it with the required systems. When needed, he customizes the app to introduce additional card pre-production features and integration capabilities requested by a bank. For example, the app comes with in-built authentication capabilities and a role assignment API, but some customers already employ Azure Active Directory for these purposes. So, a common scenario is designing and implementing custom app integrations with the customersâ Active Directory environments. Since testing procedures are typically conducted on a customerâs side, our expert frequently communicates with the banksâ QA teams to learn the test results and quickly address the revealed issues.
- App logic improvement. When product users report functional problems, the Clientâs support team involves ScienceSoftâs developer to perform code review, investigate the reason behind the issue, and fix the code to work as intended.
- App evolution with new capabilities. Cooperating closely with the Clientâs product management team, our Java engineer designs and develops new customer-facing features. Particularly, he built the functionality for card data auto-population and card envelope personalization, as well as quick menu functionality to simplify app navigation. Following the companyâs product evolution strategy, our engineer adds custom features developed for specific customers to the appâs default customization options and releases the updated version of the app customization pack every three months.
- Removing the appâs features. Alongside developing new card embossing management capabilities, our talent takes part in dismissing redundant and legacy app functionality.
- Dockerizing the appâs code. Initially, the Clientâs product was web-based and required manual deployment on an application server. The implementation process took much time and was prone to errors. Eventually, the Client decided to containerize the appâs code and its dependencies via Docker compose. This would streamline product rollout across banking IT infrastructures, saving efforts for both the Clientâs in-house engineers and the banksâ IT teams. Well-versed in DevOps, ScienceSoftâs developer quickly adapted to the new delivery approach and helped the Clientâs DevOps team dockerize the existing solution codebase.
- App migration to an independent server. Together with the Clientâs development team and DevOps engineers, our expert participates in migrating the card embossing app from IBM WebSphere Application Server to the Apache Tomkat open-source environment. Particularly, ScienceSoftâs Java talent is responsible for migrating the appâs source code from Oracle JDK to OpenJDK.
According to the engagement terms, ScienceSoftâs developer regularly logs the accomplished tasks and time spent in the Clientâs Microsoft Project system to make the progress transparent for the companyâs project management team. In addition, ScienceSoft provides monthly effort reports across all cooperation directions to reconcile engineersâ performance and ensure fair and accurate billing.
Team Augmentation in 5 Days to Support Steady App Evolution
As of June 2024, ScienceSoftâs senior Java engineer has been working with the Clientâs team for 9 months. Thanks to ScienceSoftâs vast pool of seasoned financial software developers and established resource assignment practices, the Client managed to bridge the skill gap and find a fitting Java developer in only five days. Rapid staff augmentation with our talent helped the company keep the planned pace of bank card embossing product updates, prevent interruptions and delays in customer service, and ensure consistently high quality of customized app versions.
Technologies and Tools
Java (8, 11), Oracle JDK, OpenJDK, Spring, Spring Boot, LDAP, Docker, Apache Tomcat, IBM WebSphere Application Server, WildFly, PostgreSQL, Oracle Database.