Why do we need a platform before we can do anything with AI?
Because most AI projects fail on the data rather than the model. If the customer record lives in four systems that disagree, anything built on top inherits the disagreement and produces confident nonsense. The platform work is joining those sources, deciding which one wins, and making the result available in one place. It is the least visible part of this work and the part that decides whether the rest is possible.
Do we have to move everything into one system?
No, and usually you should not. The goal is one place to read from, not one place to store everything. Systems that work stay where they are and feed the layer that joins them, which means the finance team keeps its ledger and the warehouse keeps its stock system while the reporting stops being reconciled by hand.
How long before we see anything?
The order is chosen so that something is usable early. We start with the sources behind the one question the business most wants answered, land that, and widen from there. A platform programme that delivers nothing for two quarters is a platform programme that gets cancelled in the third, and that is a planning failure rather than a technical one.
Who governs what, once the data is in one place?
That question is part of the build. Ownership per source, who may see what, how long things are kept, and what happens when a record has to be deleted. Deciding it while the platform is being built is straightforward; deciding it after several teams depend on the platform is a project of its own.
How do we know the numbers coming out are right?
By testing the data the way you would test code, which is still an unusual idea in a lot of organisations and is the difference between a platform people trust and one they check by hand. Every pipeline states what it expects, row counts within a plausible range, keys that should be unique actually being unique, totals that should reconcile against the source system reconciling, and those expectations run on every load rather than being verified once during the build. A load that fails them stops instead of quietly publishing. Without this you get the failure that erodes confidence permanently: a dashboard that is subtly wrong for three weeks, discovered by someone who happened to know the real figure, after which nobody believes any dashboard again.
What does it cost to run, and why do cloud data bills surprise people?
Because the pricing rewards patterns that are the opposite of what feels natural. Storage is cheap and rarely the problem. What costs money is scanning: a query that reads an entire history to answer a question about last week, run hourly by a dashboard nobody opens, is a bill arriving quietly every month. The controls are partitioning so queries read only what they need, materialising the aggregates that get asked for repeatedly, retiring scheduled refreshes that no longer have an audience, and being deliberate about what genuinely needs to be current within seconds rather than current within a day. We instrument cost per pipeline from the start, because the alternative is a single number at the end of the month that nobody can attribute.
Can this run in our own environment rather than a vendor's?
Yes, and for some organisations it is required rather than preferred: data that cannot leave a jurisdiction, a regulator with a view, or customers whose contracts say so. The platform is defined in code and deployed into your accounts, which is what makes that choice available rather than theoretical. The honest trade is that running more of it yourself means operating more of it yourself, and that cost is ongoing rather than one-off. We would rather you make that decision with the running commitment stated plainly than discover it in the second year.
What happens when a source system is replaced?
It should be a change at one boundary rather than a re-plumbing of everything downstream, and whether that is true was decided when the platform was built. If every dashboard, report and model reads directly from the CRM's own tables, replacing the CRM means touching all of them. If they read from an agreed internal shape that the CRM feeds, replacing it means rewriting one ingestion path and leaving everything above it alone. Source systems get replaced far more often than platform programmes assume, so that boundary is worth the modest cost it adds at the start.