Industry: Investment & Asset Management Engagement Type: Legacy Modernization & Process Optimization Services: Requirements, Technical Strategy, Application Development, Mentorship & Training Long-term partner: The client engaged Keyhole Software repeatedly between 2011 and 2025, extending contracts numerous times for quality delivery. Teams ramped up and down based on business need. The Challenge A leading financial institution relied on a suite of …
Java Software Development & Consulting Services
Discover Keyhole Software’s expert Java consulting services. From custom application development and project augmentation to training and advisory, our U.S.-based Java practitioners deliver enterprise-grade solutions tailored to your business needs. Learn more!
Converting Enterprise Applications to TypeScript
We have all been there: some new technology comes out and we know it would improve our maintainability. But we can’t use it. We already picked a technology, it is already implemented, and we can’t change it now. We are stuck.
TypeScript does not work like that. TypeScript is JavaScript, and JavaScript is TypeScript. What this means is any existing files you have are compatible with any new file you add.
So why waste time changing if it’s all the same anyway? TypeScript has some great advantages that JavaScript does not. In this blog I will introduce some of those advantages, as well as some troubleshooting tips for if you run into issues when you choose to convert to TypeScript…
Modernization: COBOL Batch Processing to Spring Batch
The Keyhole team worked to modernize the organization’s enterprise batch processing applications. This project included converting a long list of COBOL batch processing applications into Java-based batch applications using the Spring Batch framework. The project encompasses a wide range of tasks from calculating and assessing fees, to processing large vendor fees, and running recon reports.
Getting Started With JHipster, Part 3
Welcome back to this JHipster tutorial series! In part one we covered creating a monolithic application. In part two, we walked through creating a microservice application (which was a bit more complicated).
For those of you out there working to get things going with JHipster, there are some setup things and “gotchas” that I’d like to highlight. So this little blog is more of a helper for those of you who have decided to try JHipster out and play around with it. That’s what we’ll be discussing in this blog post with the hope that I can help you minimize the getting-up-to-speed curve…



