Back to projects

Technical deep dive

Cloud and platform modernisation of a business-critical commerce platform

A technical deep dive into long-term platform ownership, focusing on two cloud migrations, containerised operations, automated delivery, observability and secure interfaces.

Project context
Nationwide retail buying group
Period
03/2019 to 12/2023
Role
Lead Software Engineer, Software Architect & Technical Project Lead

Technical deep dive within the lead case study

Enterprise commerce platform overview →
Two cloud migrations
from local operations through an initial Kubernetes platform to the target architecture in Google Cloud
Automated
reproducible builds, staging and production deployments, and controlled rollbacks
Measurable
technical targets, monitoring and observability as the basis for operations and optimisation

Context

This case study is the technical deep dive for a long-running enterprise commerce engagement. While the parent project covers platform scope, role progression and overall ownership, this page focuses on the modernisation of architecture, infrastructure and production operations.

Ongoing product development could not be put on hold. Every technical change had to be incremental, controllable and compatible with the daily operation of a business-critical platform.

Starting point

The platform had evolved over many years and originally ran on locally oriented infrastructure. Different applications, interfaces and deployment paths made consistent releases, transparent fault analysis and flexible scaling difficult.

At the same time, expectations for availability, performance, security and delivery speed continued to grow. The objective was therefore not a risky wholesale replacement, but a dependable migration path for architecture and operations.

Migration in two stages

The first step containerised the applications and moved them from local operations to a Kubernetes environment on an initial cloud platform. This created consistent runtime environments and a stronger foundation for reproducible deployments.

The second migration moved the platform to Google Cloud Platform. Workloads were transferred to Google Kubernetes Engine and operational processes were adapted to the new target architecture. Both migrations were planned and delivered alongside continuous product engineering.

Architecture and interfaces

Established platform components were gradually modularised and moved towards a more consistent service architecture. Central interfaces were redesigned, integration ownership became clearer and APIs were consolidated through gateways.

A GraphQL-based integration layer combined technical data from cloud metrics, performance analysis and additional services. API keys, rate limiting and clearly defined access paths strengthened both external and internal interfaces.

Automated delivery

The existing GitLab CI landscape was structured around merge request and tag pipelines. Builds, tests, container images, and staging and production deployments became reproducible and automated.

As part of a planned platform migration, these processes were transferred to Bitbucket Pipelines. Releases and rollbacks were evaluated against defined technical targets, allowing changes to be assessed and reversed in a controlled way.

Performance and content delivery

Static assets were delivered through a CDN architecture based on Amazon S3 and Cloudflare. This reduced load on the core platform, shortened delivery paths and provided a stronger foundation for optimising high-traffic content.

Performance was treated as a continuous engineering concern rather than an occasional activity. Technical metrics and external analysis data created a shared basis for prioritising improvements across application, architecture and infrastructure.

Monitoring and observability

Grafana, Prometheus and PromQL provided the foundation for metrics, dashboards and technical targets. Cloud, platform and application data were brought together so that operations, engineering and technical leadership could work from a shared view of the system.

Monitoring therefore evolved from basic fault indication into a tool for release decisions, performance management and capacity planning.

What I worked on

I combined hands-on software engineering with architecture and project ownership. This included technical planning of the migrations, development and redesign of central components, coordination of delivery, and ownership of CI/CD, monitoring, CDN and API security.

The modernisation was deliberately incremental: production stability, business delivery and technical renewal had to remain compatible at every stage.

Outcome

A locally operated and heterogeneous system landscape evolved into a containerised and automatically delivered cloud platform. More consistent architecture and deployment patterns, transparent metrics and clearer integration paths improved scalability, operational resilience and maintainability.

Contact

Has your backend grown difficult to change, or is the project stuck?

I help when bugs are hard to trace, new integrations are needed, or the team needs someone to connect architecture with hands-on delivery.

A good fit when …

  • an established backend has become difficult to change
  • several systems or APIs need to work together
  • technical ownership needs to be shared or clarified
  • Available now
  • Conversations welcome now
  • Remote and hybrid
  • Mönchengladbach and Düsseldorf