All projects
2024.05Software & InfrastructureLegacy Modernization

Enterprise Service Platform Modernization

Split functions bundled in a single server into services while tracking migration progress.

WebServer & Infra
Enterprise Service Platform Modernization
Screen reconstructed from delivered work. Contains no client data.
Timeline
About 6 months
Team size
4 people
Platforms
Web · Server
Migration approach
Sequential, feature-by-feature migration

Background

Multiple features were tangled together in a single server, so deploying even one feature meant redeploying the whole server. The client wanted to split it into services, but had to do so without stopping the service that was already live.

Scope

  • Splitting service boundaries by feature
  • Message-queue integration between services
  • Tracking migration status stage by stage
  • Running existing features and new services in parallel
  • Kubernetes deployment configuration

Technical decisions

What we chose, and why it fit

Migrated feature by feature in sequence, rather than moving everything at once

Changing the entire service at once would make it hard to isolate the cause of any problem and hard to roll back. We separated and moved features one at a time, running them in parallel with the existing server to verify before moving to the next, so that any issue during migration stayed scoped to that one feature.

Stack

JavaKubernetesKafkaAWS