Featured image for โ€œImproving Performance Of Java/Spring Mobile Security Applicationโ€

Improving Performance Of Java/Spring Mobile Security Application

Client: Leading mobile security company that publishes mobile app and device security software that is recognized by IDC, Gartner, Deloitte Fast 500, and TAG Cyber and based in Chicago.

Project Overview

Keyhole Software Consultants embedded as key software development team members enhancing a complex system that performed security scanning for mobile applications. The overall project goal was to improve performance and stability so that future developers could more easily interact with it.

The application accepts binaries of Android and iPhone apps and performs both synchronous and asynchronous security scanning via distributed Node.js services orchestrated by a Java Spring backend. It integrated with other applications within the corporate ecosystem via direct calls and database triggers. These services interacted with a Java Spring backend via Websphere MQ.

Our primary focus was improving the performance of asynchronous distributed services by adding new enhancements and streamlining the existing code. These services were primarily Node.js and Golang and were deployed via Docker and Kubernetes. She deployed and supported Java backend changes to improve the performance of the system. She also made minor enhancements and improvements to existing JSP pages for an internal monitoring tool.

From a standards perspective, this system had large amounts of custom code in a variety of languages and styles and required significant investigation to run locally and produce the expected outputs. Since the original authors of the system were not present and documentation was minimal, Keyhole Consultants had to interpret both the existing functionality and the intention of that functionality independently and then communicate that back to the team prior to making proposals for changes. They also gained domain knowledge about the security features of iPhone and Android application files.

Keyhole Consultants worked with the team to implement planned strategic enhancements within agile iterations but also independently proposed and got approval to implement additional improvements to the existing functionality. They also helped troubleshoot performance issues in the Java Spring backend and reviewed Java code written by other contributors. Additionally, they performed code reviews and provided feedback to a junior developer and an onboarding senior developer for both the Node.js and Java code.


Share: