Back to journal
Platform delivery notes

Building a Data Platform People Actually Trust

The hard part is not choosing a warehouse. It is creating a platform where finance, ops, and product stop arguing about whose number is correct.

Data PlatformdbtSnowflakeGovernance
PublishedRead time8 min read

Working principle

A platform becomes trustworthy when teams stop debating the metric and start using it.

Primary risk

Semantic drift

Habit that pays

Monthly cost review

North star

Dependable gold models

Architecture diagrams do not create trust

Enterprise data platforms usually look coherent on slides long before they feel coherent to the people using them.

The slide says ingestion, warehouse, transformation, BI. The real test is more mundane: finance opens a dashboard, operations opens another one, and both teams stop arguing about whose number is correct. If that does not happen, the architecture is still unfinished no matter how polished the stack looks.

That is why I care less about the perfect tool chain than about the operating habits that make a platform dependable.

Reduce moving parts on purpose

Most platform pain does not come from one bad product choice. It comes from accumulating too many "pretty good" tools with overlapping responsibilities.

I prefer one primary platform for storage and compute, one transformation layer, one ingestion path per major source category, and as little orchestration cleverness as possible. That does not sound modern enough for vendor decks, but it is much easier to run.

What I optimize for first

  • The skills the team actually has, not the stack they wish they had
  • Governance features that work without six months of custom plumbing
  • Cost visibility at the warehouse and workload level
  • A path to document lineage and metric ownership
Snowflake, Databricks, and BigQuery can all work. The harder question is whether the rest of the platform will stay understandable after twelve months of growth.

dbt only pays off when the rules are boring

dbt is valuable because it turns transformations into software. It becomes messy when teams treat it like a dumping ground for every SQL file they need this week.

The projects that hold up over time usually share the same discipline:

  • Clear model layers such as staging, intermediate, and business-ready outputs
  • Naming rules that let a new analyst understand the project quickly
  • Tests on every key model instead of a vague promise to "add them later"
  • Owners for the domains that generate the most business-critical tables
I would rather have a smaller dbt project with strict conventions than a huge one full of clever exceptions. Boring models are easier to trust, review, and hand over.

Freshness and cost are the first two alarms I want

The first platform incidents that matter to the business are usually very ordinary.

Either the data is late, or the bill is wrong.

Freshness is visible immediately. A commercial team notices missing daily figures long before they notice subtle modeling drift. Cost is slower but just as dangerous. A warehouse can stay technically healthy while query patterns quietly double spend over a quarter.

The routines that keep me honest

  • Freshness checks on critical tables before the business day starts
  • Resource monitors and warehouse budgets with explicit owners
  • A monthly review of the noisiest queries and dashboards
  • Separate compute policies for ETL, BI, and ad hoc work
These are not glamorous platform features. They are the habits that stop small issues from becoming political issues.

Governance is not a later phase

Many teams talk about governance as if it begins once the platform is already "done." In practice, governance is what stops the platform from becoming unmanageable halfway through delivery.

At minimum, I want role-based access from the beginning, clear handling of sensitive columns, and lineage that lets the team answer a simple question quickly: "If this metric is wrong, what is upstream of it?"

If the answer takes an hour to assemble during an incident, the governance layer is still too weak.

Tooling matters less than semantic consistency

People often ask which BI tool I prefer. The real issue is rarely the BI tool.

The hard part is agreeing on what "revenue," "active customer," or "available stock" actually mean, then exposing those definitions consistently across dashboards and teams. If the semantic layer is incoherent, no dashboard tool will rescue the experience.

This is why I like putting metric definitions as close as possible to the transformation layer, with clear ownership. It reduces the temptation for every business unit to reinvent core KPIs in its own reporting layer.

The first month I would repeat today

  1. Set up production and development environments with cost controls already enabled.
  2. Deliver one complete flow from a real source to a real dashboard.
  3. Put naming, testing, and ownership rules in place before the project grows.
  4. Add freshness monitoring to the tables executives will look at first.
  5. Define role-based access before sensitive data starts spreading through the warehouse.
That sequence is not flashy, but it creates a platform that can survive adoption. Teams can add more observability, reverse ETL, cataloging, or ML services later. They struggle much more when the basics never hardened.

The data platforms that age well are rarely the most impressive on day one. They are the ones where the definitions stay clear, the pipelines stay observable, and the team can explain both quality and cost without improvising.

More notes

AI delivery notes

RAG in Production: Chunking, Retrieval Quality, and the Problems the Demo Hides

Context window limits, suboptimal chunking, retrieval evaluation, hybrid search, observability, and cost control — the real engineering behind a RAG system that works past the demo.

7 min read
Read article