Back to all projects
Fixed Income

Rebuilt, Not Rewritten: A Legacy Banking Modernization

Headline

Modernized a decades-old VB6 banking application into a secure, browser-based microservices platform. Every business rule was preserved while keeping the production database completely unchanged.

Key highlights

Reconstructed user behavior entirely from VB6 source, database scripts, and screen references embedded in the code.

Produced a traceable map of legacy screen → new UI + service, with unknowns flagged early to avoid rework.

Decomposed the monolith into bounded services with clean separation of concerns (UI / API / business / data), well-defined API contracts, and a dedicated data-access layer that safely wraps the legacy databases.

Recreated the existing schema in our environment to develop and validate against, and ensured every new service preserves the original data contracts and behavior.

A clearer, consistent interface while preserving the workflows and mental models users rely on, built on a reusable component library for consistency.

Used AI to speed comprehension of legacy modules, scaffold translation boilerplate, and broaden test coverage with human-in-the-loop review gates, keeping accountability for logic, security, and correctness.

Built a screen-by-screen pipeline: analyze legacy flow → map to target services + UI → implement → test & regression-check.

Unit, API-contract, integration, and regression tests built from verified legacy behavior, backed by code review, static analysis, and a shared definition of done.

Least-privilege access, secure secrets and configuration handling, defensive input validation, and built-in auditability and traceability.

Put an early working version in the client's hands quickly so they could explore, react, and steer.

Get in touch
Rebuilt, Not Rewritten: A Legacy Banking Modernization