Watching 212 data feeds so nobody has to.
A+E measures its shows everywhere they air — broadcast, FAST channels, streaming, direct-to-consumer. The truth about how a show performed is scattered across 212 data feeds, and every partner reports it a different way.
Some feeds land as automated pushes to S3. Some are still manual downloads. Column names differ partner to partner, and the same show can show up under three different titles depending on whose system reported it. When something breaks, it's rarely obvious — it surfaces two or three steps downstream, in a revenue report that doesn't tie out. One partner once reported viewing time in seconds instead of minutes for weeks before anyone caught it.
"The bug is never in the model. It's in the file that arrived in the wrong shape, and nobody noticed for three weeks."
We started by cataloging every feed — where it lives, how often it should arrive, and whether anyone was actually watching for it. That audit alone turned up feeds that were supposed to update daily and hadn't in months. From there we mapped the seven entities every feed eventually has to resolve into — Title, Schedule, Distribution, Viewing Event, Audience, Revenue Line, Payment — so a partner's oddly-named column has one canonical place to land.
On top of that we're building a four-layer QA agent: does the file arrive on time, does the data pass basic plausibility checks, does it cross-reference cleanly against everything else A+E knows, and if not — who gets told, and how fast. Samsung's FAST channel is the pilot. Its three feeds — channel-level viewing, program-level viewing, and audience counts — land on three different schedules from the same partner. That drift was the first thing the agent caught.