Our Work
Real Projects, Real Outcomes

Case Studies

Selected Projects

Integrations, migrations and upgrades on systems that stayed live while we worked on them — completed without data loss or service disruption. Some clients are described rather than named.

Live systems integration

Delhi Metro: smart-card add-value machines

The brief. An automatic smart-card add-value machine had an incomplete API integration with the central Delhi Metro systems.

The outcome. We patched the machine’s embedded C++ software so it could connect properly and transfer financial data between the Delhi Metro server and passengers’ smartcards.

2022

Live production migration

E-commerce migration for a museum replica manufacturer

The brief. Move the manufacturer’s store from its hosted e-commerce system to a new cloud-based platform, and repair an earlier, incomplete migration of a second website. Both stores kept taking orders throughout.

The outcome. The first site was migrated in stages, data type by data type, until it ran fully on the new platform. The second was re-migrated from scratch, with the target database refreshed in stages. Both were completed to the client’s satisfaction.

2025

Production system upgrade

Rails upgrade for a long-running web application

The brief. A production web application was running a many-years-old version of Ruby on Rails and needed to move to Rails 5.

The outcome. We upgraded it test-first: progress was measured by new and existing automated tests passing, until the whole system ran on Rails 5.

2021

Legacy-to-CMS migration

Two websites for a US scientific equipment manufacturer

The brief. Move all content — products, technical data sheets, photographs, FAQs, reviews, downloads and release notes — from a legacy CMS to WordPress.

The outcome. Both websites were migrated, redesigned and their content updated, on a Bedrock WordPress setup. Completed to the client’s satisfaction.

2023

Multi-API integration

Payment gateways for a hotel booking platform

The brief. Connect a wide range of payment gateways from around the world to a hotel booking SaaS system.

The outcome. We refactored the existing code into a plug-and-play architecture for gateways. Setting up a new payment gateway became six times faster.

Cross-system data sync

Moving a website between cloud CMS platforms

The brief. Migrate all of a website’s content from one hosted CMS to another, cloud-based CMS.

The outcome. An eight-month project that delivered a fresh design and a new content structure, and moved the database to a cloud system that is reachable only through APIs.

Recent Work

Websites We Have Built

A look at recent projects. If a site is listed here, we worked on it and we can tell you about it.

Hospitality

Hotel Ambrosia, Gangtok

Websites

CID Bio-Science

E-commerce

Atlanta Cutlery

Upgrades & Migrations

Museum Replicas

Custom Software

Peerwater

API Integrations

Delhi Metro

How We Deliver

Built to Keep Live Systems Safe

Modern engineering practice, so progress is measurable at every stage and nothing reaches a live system unverified.

Test-driven development

Changes are checked against new and existing automated tests. Progress on an upgrade or migration is measured by tests passing, not by opinion.

Version control & staged releases

All work is tracked in Git and promoted from development to staging to production, so nothing reaches a live system unverified.

Zero-downtime migrations

Large migrations run in stages by data type, with parallel runs, reconciliation checks and staged database refreshes — and a clean rollback path.

Middleware safeguards

Data passes through a staging layer that acts as a checkpoint, a backup and an ID map between the two systems, and is verified before it reaches the target.

Mock servers

Integrations are tested against mock servers that follow the production API specification before they touch live endpoints.

No data loss

Our live production migrations have been completed with full data integrity and customer sign-off.

Have a System That Needs Moving or Fixing?

Tell us what you are running today and what needs to change. We will tell you how we would approach it — and if it is not worth doing, we will say so.