- Spring Boot
- Java 8
The client is an equity research and investment advisory services provider from Europe with 20+ years of experience and has earned the trust of market leaders in their industry. The company always keeps up with technological innovations and the latest financial trends, so this project was another move in this direction. The client had an on-premise private platform, which provided users with information on the investment potential of particular companies. But the problem was that only the CEO and the employees of the company had access to it, for providing reports, graphics, metrics, company comparisons, and dashboards to customers on demand. There was a need to make this platform public, automated, and accessible to each customer of the company, in order to eliminate the necessity to process each request manually.
SPD Group has 13+ years of practical experience working on a financial platform very similar to the one in this project but on a much bigger scale, so we had a perfect team of developers to take over this case.
The main business objective was to improve the experience for the customers of the company with a subscription, providing them with a convenient web application that would be able to illustrate the most accurate financial information in the shortest time possible. With this application, our partners would become more attractive to new customers and have an additional edge over their competitors.
Initially, we had to work with a private on-premise platform with 5+ components that was not designed to be convenient and self-descriptive for customers. The three main challenges for us on the technical side included the following:
- User Experience/User Interface Design Improvement
- Performance Optimization
- Cloud Migration
Each challenge was equally important in delivering the high-quality online experience that our clients envisioned. Our team needed to collaborate with a team of developers on the client’s side, to deal with the aforementioned challenges.
We started working on this project with a team of front-end and back-end developers as well as a team lead. With some changes along the way, our development team always consisted of 3 dedicated experts.
The first step was to focus on creating a self-descriptive User Interface. We introduced new mechanisms such as adding tips, implementing responsive designs to display websites in proper resolutions on different screens, adding spinners for infinite loading of components, and using packs of templates, libraries, and components such as Bootstrap. Our team also worked on the functionality which allowed users to customize the number of components on the screen, so the end-user would be able to choose which ones to display. In general, we worked hard on improving the User Interface, trying to group the variety of elements on the screen in the most convenient and user-friendly way.
“The two biggest challenges with UX/UI we successfully dealt with were the need to migrate from the older version of Angular to use certain components, and the improvement of the legacy code.”
— Igor Dmitriev, Team Lead from SPD Group
As for performance issues, there were some typical problems with the ineffective usage of Hibernate and N+1 frameworks. The main goal here was to reduce the number of inquires from the server to the database, which were slowing down the application. We successfully resolved this problem and also optimized SQL queries and added caching.
The final step was to migrate the on-premise application to the Cloud. Keeping in mind that the initial application was not designed to be deployed to the Cloud, we had to deliver some upgrades and optimizations first, to eliminate some major problems with the code. We turned the application into the 12-factor app supported with stateless architecture through heavy usage of Cloud-native techniques. After we did that, the app could be easily scaled and deployed to the Cloud with no additional moves needed. Our team helped the client migrate the app to the Google Cloud. We also introduced continuous integration and continuous delivery practices into the process and thus achieved zero downtime deployment for the application.
Speaking of security, we migrated to the Auth0 in order to delegate the responsibility for security to the modern SaaS service, which adheres to the latest security standards and protocols. Auth0 has a lot of important, out-of-the-box features, such as the support of magic links, social connections, SSO, MFA, and so on. This move provided us with authorization mechanisms and facilitated the management of user roles, thereby sparing us the trouble of developing this functionality from scratch.
After 5 months of beginning the development process, our team managed to release the new and improved version of the application. The main business goal was achieved because the customers are now able to leverage a modernized Cloud application for their financial information needs. Our team was able to achieve 10x performance improvement, compared to the original on-premise version of the application. Thanks to the efforts of our team in improving deployment speed and in automizing code deployment, each new feature introduced to the application becomes available to the end-user in just a few minutes. This means that the Time-To-Market for our client has dramatically reduced, and our partner can now add new features to improve customer experience even more, with or without our help.
The web application for the financial platform thus became scalable and optimized for unlimited traffic, opening more possibilities for future growth.
As of summer 2021, the partnership between SPD Group and our client has been put on hold due to COVID-19-related budget limitations on the client’s side. However, the client is very happy with our performance and is planning to evolve this application even further in the future, by introducing new features and adjusting the app according to customer feedback. This is another success story by SPD Group, which proves the effectiveness of remote dedicated software development teams in building the products of the future for organizations around the globe. We would love to continue working on this project, share the business vision of our clients and help them achieve more ambitious goals.
ARE YOU INTERESTED IN DEVELOPING A WEB APPLICATION?
Contact our experts to get a free consultation and time&budget estimate for your project.Contact Us