Clients and project names are held back. Everything else is real: what the problem was, what got built, what changed as a result. Where a number has not been measured or cleared, it is marked instead of guessed.
01 / Vision
Live movement tracking
Fitness technology Multi-camera floor, two views per station
Running in production
Problem
A training floor has more happening on it than any coach can watch.
Sector
Fitness technology.
Built
Every station watched continuously, from paired camera views, with no wearable on the member.
Reps counted and depth measured from the movement itself, rather than from a timer or a button press.
A stall detector that recognises when someone has stopped being able to finish a rep, and says so while it is still happening.
One independent process per station and movement, so a failure at one station never takes the floor down.
An event layer that survives a dropped connection and reconnects without a restart — the difference between a demo and a system that opens at six every morning.
Rebuilt for production speed, and extended with muscle-activation sensing for the sessions that need it.
Outcome
Coaching attention goes where it is needed. The floor measures itself — every rep, its depth, and the moment a member stalls — so a coach walks the room instead of counting it, and a member’s progress is a record rather than a recollection.
02 / Vision
Equipment recognition by weight
Fitness technology Twenty classes
Live alongside 01
Problem
Knowing someone picked up a dumbbell is not enough. The system has to know which one.
Sector
Fitness technology. Same floor as 01.
Built
Twenty classes in production — dumbbells from 5 to 50 lb, six kettlebell weights, four colour-coded balls — grown from an earlier three-class model.
Equipment separated by weight, not just by type: a 20 lb dumbbell and a 25 lb dumbbell are different answers, not the same one.
A colour classifier for the weighted balls, reading load off colour alone, since the balls are identical in shape and size.
Trained as its own network rather than thresholded on hue, because gym lighting shifts colour far enough to break a fixed rule.
Answers returned to the station in the same moment the movement is being tracked, so weight and rep arrive together.
Outcome
A session logs itself. The load a member actually lifted is captured without anyone typing it in, which means progression is measured from what happened on the floor rather than from what someone remembered afterwards.
03 / Vision
Vehicle damage from a phone
Automotive On-device detection and depth
Built and iterating
Problem
Assessing a vehicle’s damage takes an expert and a clipboard. It should take a walk around the car.
Sector
Automotive.
Built
Thirteen kinds of damage, learned from 6,649 labelled photographs of real vehicles.
Detection running live on the handset itself, with no round trip to a server and no signal required.
Depth sensing that reads the shape of the panel, not just the picture of it.
A dent detector using two independent depth methods, so a shadow does not read as a dent.
Close inspection mode, a report generated at the end of the walkaround, and a capture mode that turns each scan into training data for the next model.
Outcome
An assessment that needed an expert now needs a phone and two minutes. Every vehicle is scored the same way by the same model, so the report does not change with who is holding the device — and the system gets better each time it is used.
04 / Vision
Contactless vitals sensing
Consumer health Camera and radar sensor fusion
Spec and hardware prototype
Problem
Parents want to know a sleeping baby is breathing without putting anything on the baby.
Sector
Consumer health.
Built
Three sensing methods fused into one reading — camera, radar, and room conditions — so no single sensor has to be right on its own.
A working monitor reporting heart rate and breathing rate across a room, with nothing attached to the child.
A companion phone app for the live view.
A regulatory line drawn through the feature set at design time, separating what can be claimed from what cannot.
Outcome
Vitals read across a room with nothing touching the child, and a product that can ship without waiting on a clearance path — because the line between a wellness claim and a medical one was drawn before the hardware was built, not after.
05 / Vision
Body composition from vision
Fitness technology Camera capture and pose landmarks
Running in production
Problem
Measuring body composition normally means a scale, a caliper, or a scanner the size of a wardrobe.
Sector
Fitness technology.
Built
Composition estimated from camera capture and body landmarks — nothing worn, nothing touched, no dedicated booth.
A versioned interface contract locked down before the backend shipped, so the app and the model can each move without breaking the other.
Capacity tuned against the hardware it actually runs on rather than against an assumption, with the numbers written down.
Validated against a reference method before release, not after.
Deployed to production infrastructure and serving live traffic.
Outcome
A measurement that used to need equipment and an appointment now needs a camera and a few seconds, which means it can be repeated often enough to show a trend rather than a single reading.
06 / Vision
Face recognition at the door
Healthcare and secure sites On-device, watchlist-only
Built and running at the edge
Problem
A facility knows who is credentialed. It does not know who just walked in.
Sector
Healthcare and secure sites. Entrances, reception, and loading doors, where a badge says someone should be allowed in but nothing says the person at the door is a barred visitor or a former employee.
Built
One-to-many matching against a single facility’s own watchlist — approved vendors and flagged individuals — and nobody else. Everyone else is simply not a match: no profile, no record, nothing kept.
A face becomes a numeric signature on the device itself. The photograph never leaves the building.
Detection and matching run at the edge on both mobile platforms, so recognition never waits on a server round trip.
A match is a prompt for a person to confirm or dismiss. The system never acts on a face by itself.
Built on a recognition model trained in-house on synthetic, licence-clean data, so it carries none of the restrictions bundled with off-the-shelf models.
Outcome
The security gap closes without opening a privacy one. A facility recognises the people who matter at its doors — the approved vendor waved through, the barred visitor flagged while they are still standing there — without profiling everyone else who walks past. Because matching happens on the device against a defined list, the sensitive data mostly never exists to be leaked, which is a stronger guarantee than any data-handling clause. In a hospital that is the difference between a system that can be deployed and one that cannot.
07 / Signal
Call centre conversations
Contact centre operations Live calls and archive, real time
Delivered
Problem
A floor manager hears a handful of calls a week and has to run a whole team on that.
Sector
Contact centre operations.
Built
The whole recorded archive turned into text, alongside live calls, so what was only ever stored became something you can actually search.
Emotion recognised from the audio itself — how something was said, not only what was said — running live as the call happens rather than inferred from a transcript afterwards.
The turn in a conversation marked at the moment it happens, so a call going wrong is visible while it can still be saved.
Script adherence checked on every call rather than on a sample of them.
Findings surfaced to the agent and the manager while there is still time to act on them, not in a report a month later.
Outcome
Coaching stops being a sample, and it stops being after the fact. Every call is reviewed instead of the few a supervisor had time for, so the agents who need support are found by what happened on the line rather than by who happened to be listened to that week — and because the emotion in a voice is read while the call is live, a conversation going wrong can be caught during it, not in a report the following month.
08 / Signal
Policy classification
Healthcare Unstructured document corpus
Delivered
Problem
Years of policy documents, more than any team can read, hiding product opportunities nobody could see.
Sector
Healthcare.
Built
Documents classified by what is inside them, not by where somebody filed them.
Text mining across the entire corpus, surfacing the patterns nobody had the hours to find by hand.
Delivered as a cloud service the client’s own team runs on new documents, rather than a one-off analysis that goes stale.
Outcome
Unstructured documents became a product input. The client could see which customer needs kept recurring across the whole corpus and build against them, instead of guessing from the handful of documents someone had time to read.
09 / Data
Growth drivers
Subscription business Internal and external data
Delivered
Problem
Subscriber growth had stalled, and the data on hand could show that it happened but never why.
Sector
Subscription business.
Built
External data brought in alongside the client’s own, because the answer was not sitting in the internal numbers.
Modelling that separates the indicators which lead growth from the ones that only follow it.
Every indicator scored by direction — helping, hurting, or doing nothing at all.
Outcome
The growth conversation moved from opinion to evidence. The team could tell which levers genuinely moved subscriptions from the ones that only looked like they did, and spend effort accordingly.
10 / Data
Cross-site scheduling
Healthcare Multi-site surgical network
Architecture and prototype
Problem
Each site schedules alone, so one theatre runs late while another sits empty.
Sector
Healthcare. Networks operating several surgical facilities under shared governance.
Built
Case length predicted from what actually happened before, replacing block estimates that were set once and never revisited.
Cancellation risk scored ahead of time, so a slot can be refilled before it is lost rather than after.
Demand forecast by specialty and by facility, feeding capacity and staffing decisions weeks out.
Placement across sites solved as one problem instead of several — the piece the incumbents do not have.
Full data model, an integration layer for existing clinical records, and a working prototype the network can steer with.
Outcome
A network can see its whole capacity at once. Where a case should go stops being whichever site the referrer knows and becomes a decision made against real utilisation, real travel time, and real equipment fit.
Bring us the hard half of the problem.
A feed nobody has time to watch, or a pile of documents nobody has time to read.