Skip to content
Hafiz Adnan
All projects

Applications

Completed

Customer Portal Migration

I moved a customer-facing portal from an older codebase to a modern TypeScript stack, step by step and on the same data, and removed the old code at the end.

Legacy removed5/5

The old code goes, and customers never went offline.

The problem

Customers use the portal for real work, so it could not go offline for a rewrite.

The older codebase made every new feature, security control and integration harder to deliver.

My contribution

  • Ran an incremental migration, with old and new running side by side.
  • Built a new frontend and API with shared validation contracts.
  • Kept existing integrations and links working, then removed the legacy code.
  • Moved sign-in behavior, including two-factor login, to the new API.

Technical architecture

Interface
Single-page web application
Application
API service
Contracts
Validation schemas shared by frontend and backend
Delivery
Container-based deployment

Technologies

  • React
  • TypeScript
  • NestJS
  • Docker

Highlights

  • Legacy code fully removed
  • No risky single launch day
  • One typed contract across frontend and API

Details are generalized to protect confidential information. Company systems, customers, figures, source code and screens are not shown.