How I work
Six things I do on every data platform
Each one comes from a platform I've built, linked below, so you can see where it was applied.
-
Measure every feature, not just signups
Signups say people arrived; feature usage says whether the product works for them.
Where: Tracked signups and usage of every AI feature at an early-stage AI startup.
-
Self-serve beats a ticket queue
Model the data so the product team can answer the next question in the BI tool themselves.
Where: Set up Metabase self-serve reporting for the product team on top of dbt models.
-
Keep history, so last quarter's number never changes
When source data changes, past figures should still be reproducible.
Where: SCD Type 2 history in the lakehouse models at an industrial energy company.
-
Check the data before it reaches a dashboard
Quality rules catch problems upstream, before anyone makes a decision on a wrong number.
-
Decide who sees what once, in the model
Access rules belong in one place, not copied into every report.
Where: A four-tier row-level security model for Power BI across several businesses.
-
Test the grain of every model
Joins that fan out quietly double-count. A test that checks one row per entity catches it.
Where: Found and fixed a double-counting join in my own pipeline, with tests that fail on the old version.
A stack I've set up from scratch
For an early-stage AI SaaS product, with a small team and no data stack yet:
- Ingest dlt, Estuary
- Warehouse MotherDuck
- Transform dbt
- Orchestrate Kestra
- Self-serve Metabase