KM 5 · THE DAY JOB
Work @ LSEG
Leading AI product at LSEG — shaping how financial markets are understood by humans and LLMs.
AI for Financial Markets
Building the semantics, ontology, and tooling that let LLMs interpret pricing, analytics, curves, events, and research at scale.
Developer Platforms
APIs, SDKs, runtimes, abstractions — the infrastructure that makes financial data feel clean, fast, and consistent.
Simple Philosophy
Complexity deserves clarity. Products should feel inevitable once they exist.
Recent News

MCP connector enables ChatGPT users to access LSEG's licensed financial data directly within the ChatGPT app.
Empowering agentic AI deployment across financial workflows with trusted data and seamless MCP integration.
Enabling AI agents built in Copilot Studio to access LSEG licensed data directly within Microsoft 365 workflows.

First MCP server in Databricks Marketplace providing AI-ready access to trusted financial datasets for agentic workflows.

LSEG CIO Irfan Hussain on AI Ready Content, MCP, and transforming financial workflows with trusted data.
KM 10 · THE COACH
The Problem
Endurance plans come in two shapes: a static PDF that dies the first week life interferes, or a coach most athletes can't justify. Everyone else guesses.
What It Does
Builds a season around your actual races, then re-optimizes every week against what you completed and how you recovered. Data arrives on its own from Apple Health, Strava, Garmin, and WHOOP.
Free, Where It Counts
ML bike-fit analysis from a phone video, IRONMAN and 70.3 race guides, and a World Championship slot tracker stay free — the parts of the sport nobody should have to pay to understand.
Keep athletes focused on what matters, and give something back to the sport that changed me.
KM 15 · THE JOURNAL
The Problem
The places athletes park their training have drifted into engagement mechanics — algorithmic feeds, streak nudges, a paywall prompt one mis-tap away. The people who train hardest stay for the social graph, not the product.
What It Does
Nothing to press start on. Garmin, Suunto, and Wahoo sync on their own, Apple Health brings in the rest, and Zwift emails land at a personal inbox address. Then the map becomes the hero: splits, power curves, best efforts, training load, and share cards worth posting.
Free, and Human
No subscription, no ads, no badges or streaks. The feed is chronological and every notification comes from a real person. Clubs get their own page, feed, and leaderboards.
Your training should look as good as it felt — and the record of it belongs to you.
KM 21.1 · THE MAP
The Problem
Every good route planner asks for a subscription before it will draw a line — and none of them know what session you're actually meant to be doing today.
What It Does
Self-hosted routing over OpenStreetMap with road, gravel, and run costing. Loops generated from wherever you're standing, real elevation profiles, and GPX or FIT export straight to your head unit.
Workout-Aware
Give it the session — say 4×8 minutes at threshold — and it looks for terrain that fits the intervals, instead of handing you a climb in the middle of every rep.
Routing infrastructure is cheap to run and expensive to buy. That gap is the whole product — on the web, and in your pocket.
KM 30 · OPEN SOURCE
record 4218 power 243W hr 156 cad 91 ✓ record 4219 ····· ···· ·· ··· ··· ·· torn record 4220 power 251W hr 157 cad 92 ✓ record 4221 ····· ···· hr 158 ··· ·· torn record 4222 power 248W hr 158 cad 91 ✓
The Problem
Watches die mid-ride, batteries quit, firmware writes nonsense. Every open-source FIT parser stops at the first bad byte, and the tools that can actually repair a file are closed GUIs you can't automate.
What It Does
Resynchronizes mid-file, salvages truncated recordings, rebuilds missing session summaries from the raw records — then writes a valid .fit back out that platforms will accept.
Nothing Silent
Every drop, repair, and reinterpretation lands in a machine-readable trail. Sentinels become null before any statistic touches them, so a dead sensor never quietly reads as zero.
MIT licensed, zero runtime dependencies, Python 3.11+. The edge cases are the product.
KM 35 · THE ENGINE
Endurance & Triathlon
Everything above runs on this. Training is where I reset, rethink, and rebuild — the process is hard, and that's the point. The discipline it builds carries into everything else.
"Only the disciplined ones are free. If you are undisciplined, you are a slave to your moods"
— Eliud Kipchoge, world's fastest marathoner
How I Train
Discipline. Passion. Motivation. In that order — because motivation fades, passion is the why, and discipline is the must.
Not a Pro… Technically
I'm not a professional athlete — I just play the part with enthusiasm. My quads are still questioning the casting.
I like long distances — in products, in training, and in life.
KM 42.2 · FINISH LINE
