Onboarding a Bought Dataset Into Production
What happens between a research team deciding to license a dataset and that dataset being reliably usable by everyone on the team — a step that's easy to underbudget and expensive to skip.
Signing a contract with a data vendor is the easy part. The gap between "we bought this dataset" and "this dataset is reliably usable by anyone on the research team, forever, without the original researcher personally re-explaining its quirks" is where a lot of the real, unglamorous work of quant research infrastructure actually lives — and where budgets and timelines are most often underestimated.
The idea
A dataset that lived only in the notebook of the researcher who trialled it is not yet onboarded, even if that researcher has already built a working signal on top of it. Onboarding means the raw data lands automatically on a defined schedule rather than through a manual download; it's validated against basic sanity checks — expected row counts, expected date ranges, no unexpected nulls — so a silent vendor outage or format change gets caught quickly instead of discovered weeks later in a broken signal; and it's documented well enough that a researcher who never spoke to the original evaluator can find out what identifiers it uses, what its known quirks are, and what date range and coverage to expect.
There's also an often-skipped compliance and legal layer: does the vendor's contract restrict which teams internally can use the data, or how derived signals can be shared, or whether the data can be combined with certain other datasets? A dataset with usage restrictions that only the original negotiator remembers is a landmine for the next researcher who assumes they can use it freely. Onboarding done properly makes these restrictions visible at the point of use, not something a compliance team discovers after a signal built on the data has already gone live.
A concrete example
A researcher trials a new alternative-data feed, builds a promising signal in a personal notebook over a few weeks, and gets it approved for a modest capital allocation. Because the underlying data was never formally onboarded, the download remains a manual weekly process only that researcher knows how to run. When the researcher goes on leave, nobody updates the data for three weeks, and the signal quietly trades on stale inputs the whole time without anyone noticing, because there was no automated freshness check to flag it. A proper onboarding — scheduled ingestion, an automated staleness alert, and a short internal README covering identifiers and known quirks — would have caught the gap within a day instead of three weeks.
What this means in practice
Budgeting real time for onboarding — automated ingestion, validation checks, documentation, and a review of usage restrictions — before a dataset-dependent signal goes live is cheap compared to the alternative: a strategy quietly running on a fragile, single-person pipeline that fails silently the moment that person is unavailable. Treating "we licensed the data" and "the data is production-ready" as two separate milestones, with real work between them, is what prevents this.
A dataset isn't onboarded just because a signal has been built on top of it in a research notebook — real onboarding means automated, monitored ingestion, documented quirks and identifiers, and clarity on contractual usage restrictions, all done before a dependent strategy goes live rather than discovered after it breaks.
Further reading
- Sculley et al., "Hidden Technical Debt in Machine Learning Systems", NeurIPS (2015)