JMR · Data systems and public tools
A sample of public NaPTAN transport-stop data. Brighter dots were updated more recently.
Contains NaPTAN data from the Department for Transport, © Crown copyright and database right, licensed under the Open Government Licence v3.0.

I build data systems that people rely on. I make them easier to understand, safer to change, and simpler to run.

I work across data platforms, AI and knowledge systems, cloud, backend, web, and mobile software. The evidence and tools below are things you can inspect, run, or read.

Or take the flythrough — a scroll tour of the work

Inspect the decisions, trade-offs, and implementation.

One anonymized professional account and two independent cases connect delivery leadership, public code, and runnable tools into data-platform and governed-AI evidence. Each case states what the evidence does and does not establish.

Open a tool and see how it works.

These demos run in your browser. They use public or generated data, and your own files stay on your device.

A browser tool showing a stream of record updates

Test a stream of updates

Open tool ↗

Add bad or repeated records, overload the stream, or rebuild old data. The counters show whether anything was lost or handled twice.

A browser tool exploring a data file

Check and explore a data file

Open tool ↗

Drop in a CSV, JSON, or Parquet file. See what is in each column, ask questions with SQL, and find personal information without uploading the file.

A browser tool checking public transport-stop data

Explore UK public transport data

Open tool ↗

Check the public list of Great Britain's transport stops for missing, old, or invalid records. The checks run in your browser.

Open-source tools

Read the code on GitHub.

What I have learned and shared.

I write about replacing software safely and making technical change easier to understand.

Nov 2024
Published on martinfowler.com

Using the Strangler Fig with Mobile Apps

with Matthew Foster

A case study in modernising established mobile apps incrementally, applying the Strangler Fig pattern with modular architecture to cut risk and speed up time-to-value.

MobileLegacy ModernizationArchitecture
martinfowler.com ↗ (opens in new tab)
July 2026

The Hardest Operation in a Shared Dataset Is Delete

Adding rows is routine. Removing one permanently — from a national dataset with routes, consumers, and published files depending on it — is where the design either holds or does not.

DataPublic SectorArchitecture
7 min →

Where I have worked.

Lead Consultant / Lead Data Architect

Thoughtworks
Sep 2021–present · London, UK
  • Technically led a multidisciplinary team of 7-12 people maintaining and modernising NaPTAN, aligning engineering, data operations, policy, transport-operator, and external-consumer stakeholders.
  • Led a GCP event-driven ingestion design using Pub/Sub, Cloud Functions, and Cloud Run, with idempotency, retry and dead-letter handling, per-file status, and partial-failure isolation; delivered a tenfold increase in per-submission file capacity.
  • Led the production managed-removal capability for permanent stop removal, combining BODS/TNDS safety checks, role-based authorization, explicit confirmation, auditable decisions, safe retry, and publishing safeguards.
  • Reduced managed-removal processing time and manual support effort by at least 75%, with at least 12 months of production operation and zero erroneous removals.

Senior Software Engineer

Five Faces / Cloudstaff
Aug 2020–Aug 2021 · Brisbane, AU / Clark, PH

Lead Developer / Architect

Good Computers UK & Good Advice UK
Apr 2019–Mar 2020 · London, UK

IT Professional / CTO

Tashgeel Group
Nov 2017–Apr 2019 · Doha, Qatar
John Mikel Regida

Want to talk?

If my work fits what you are building, send me an email. I am open to Staff or Principal engineering roles in London and Europe.