Paid media data was split across platforms with inconsistent conversion and spend logic.
Analytics Systems & BI
I build analytics systems people actually use.
I work across modeling, dashboards, and stakeholder workflows to turn messy questions into something teams can act on. Most of my work is less about fancy tech and more about making sure the numbers are clear, consistent, and easy to trust.
Featured case study
Canonical Paid Media Mart
dbt models in BigQuery with explicit day-platform-campaign grain, platform staging, and governed metric marts.
Standardized executive reporting and made new channels easier to onboard without changing downstream BI.
Stakeholders to systems
How I translate business problems into analytics systems.
Most problems show up as a vague question. My job is to turn that into something concrete, then build the system around it.
Ambiguous question
Usually starts with “can we see…” or “why is this happening”
Clarify decision + metric
Figure out what decision this is actually tied to and what metric should drive it
Model the data
Lock in grain, definitions, and logic so it doesn’t break later
Build the system
Pipelines, models, and whatever interface people will actually use
Decision-ready output
Something a team can look at and know what to do next
Analytics as a product
Dashboards are products. Stakeholders are customers.
A dashboard isn’t useful just because it exists. If people don’t use it in their actual workflow, it’s dead. I think about whether people will actually use it before I build it.
What has to be true before a dashboard becomes part of the way a team works.
Decision interface
I design dashboards so someone can answer “what changed and what should I do” in a few seconds.
Good dashboards make the next step obvious. If someone has to interpret too much, it’s not doing its job.
Enterprise expansion is offsetting SMB softness.
Revenue is above plan, but the mix shift is hiding lower SMB conversion. Next decision: protect enterprise capacity while testing SMB onboarding fixes.
Technical depth
If the model is messy, everything downstream is harder than it should be.
I try to keep models simple and predictable. Clear grain, consistent naming, and logic defined once instead of everywhere.
Reporting modernization
I replace brittle reporting with governed, automated systems.
The goal isn’t a nicer dashboard. It’s less manual work and fewer arguments about numbers.
Excel reporting
Manual refreshes, version drift, hidden logic. AfterAutomated BI
Scheduled pipelines, governed metrics, shared definitions.SSRS extracts
Static outputs that require analyst intervention. AfterLooker workflows
Reusable models, self-serve paths, decision dashboards.Siloed metrics
Teams debate definitions instead of outcomes. AfterUnified layer
Shared marts and canonical measures across teams.Selected projects
More systems I have built.
A few examples of how I’ve taken messy data problems and turned them into something usable.
ProductDW Mini ELT System
ViewProblem: Raw GA4 event data was not analytics-ready for product KPI reporting.
System built: Python-orchestrated BigQuery pipeline with staging, core, and mart tables plus a Streamlit consumption layer.
Impact: Turned raw events into reusable product analytics tables and a practical KPI interface.
API Feed to BigQuery
Private implementationProblem: Event data needed reliable ingestion without manual exports or duplicate loads.
System built: Python ingestion job deployed on Cloud Run with API auth, pagination, schema mapping, and BigQuery watermarking.
Impact: Created a scheduled, low-maintenance pipeline feeding the warehouse for downstream reporting.
Core stack
Tools and systems already represented in the work.
Modeling
Warehouses + BI
Engineering
BI operating model
A few things I try to stay consistent on.
Start with the decision
If it’s not tied to a decision, it’s probably not the right problem yet.
Make grain explicit
Every model should say what one row means. This prevents hidden joins and metric drift.
Centralize metric logic
Definitions belong in governed models, not scattered across dashboard calculations.
Design for adoption
A dashboard is successful when stakeholders return to it during real operating rhythms.
Reduce analyst drag
Good systems remove repeated pulls, one-off reconciliations, and preventable explanations.
Keep builders close to users
The person modeling the data should understand the workflow the dashboard supports.
Next role
Looking for roles where I can own BI systems and still stay close to the work.
Open to BI Lead, BI Manager, Staff AE, or senior analyst roles where the work actually impacts how teams operate.