We've noticed the same pattern enough times to write it down: the projects that succeed aren't the ones with the fanciest tech stack. They're the ones with the clearest process.
Here's ours, step by step, on every engagement.
1. Discovery call
Objective: diagnose the actual problem, not the stated one.
Thirty minutes, no slides. We ask about the symptoms, the history, and — importantly — what you've already tried. At the end you get a written summary of what we think is actually going on and whether we're the right team to help. Sometimes we say no. That's part of the value.
2. Strategy and roadmap
Objective: align on what before committing to how.
One to two weeks of scoped work. We map the current state — every pipeline, model, dashboard, and the humans who own them. We design a target state that accounts for your budget, your team's skills, and your growth plans. Output is a written document plus a prioritized 90-day roadmap.
3. Data collection and integration
Objective: pull data in without handwriting connectors you'll regret.
Managed connectors where they fit (Fivetran, Airbyte, Hevo). Custom Python for the edges. Raw data lands untouched so you have a real base to work from. Orchestration via whatever the target architecture called for — Airflow, Dagster, Prefect, or something lighter.
4. Data modelling and transformation
Objective: make the warehouse the source of truth, by design.
dbt unless there's a reason not to. Staging layer for cleaning, intermediate layer for joins, marts for the business logic. Tests on every critical metric. Documentation in YAML. Naming conventions that hold up when a new engineer joins.
5. Data analysis and visualization
Objective: dashboards people actually open.
Executive, operational, self-service — whichever shape the problem needs. Built on top of the models from step four so everything pulls from the same source of truth. We resist the temptation to build the prettiest dashboard and instead build the most used one.
6. Deployment and monitoring
Objective: hand over something that won't break quietly.
Tests in CI. Freshness alerts. Cost monitoring. Runbooks for the on-call person. We treat the monitoring layer as part of the deliverable, not something you'll get to later.
7. Handoff, training, and support
Objective: your team owns what we built.
Walk-through sessions. Code reviews with your engineers. Written documentation that lives in the repo, not in a lost Google Doc. Depending on the engagement, we either transition fully or stay on retainer.
There's no step eight. The process is finite on purpose. Most projects should end.
Why write this down?
Two reasons.
One: it keeps us honest. If a project goes sideways, we can trace it to the step we skipped. Usually step one or step six.
Two: it sets expectations with you. You know what you're paying for at every stage. You know what "done" looks like. No mystery. No scope creep. Just the seven steps, run cleanly, as many times as it takes.
Want to see how this process applies to your situation? Book a 30-minute discovery call — we'll tell you honestly what step one looks like.