Selected work Growth & Shopping · Metrics architecture
Scaling trusted answers beyond the analytics team.
More than 200 stakeholders needed answers faster than one analytics team could deliver. I architected a governed metrics layer across five Zillow domains, enabling self-service and natural-language exploration and reducing ad hoc metric requests by 65%.
Zillow
- Scope
- 5 domains
- Stakeholders
- 200+ with data and insight needs
- Ad hoc metric requests
- 65% fewer
- Role
- Semantic modeling & delivery
The challenge
More than 200 stakeholders relied on analytics for reporting, ad hoc analysis, and timely insights. Their questions varied too widely for one dashboard, so answering them individually made the team a bottleneck.
Self-service could relieve that pressure only if people trusted the answers. Four conflicting datasets and scattered metric definitions made shared, governed data essential before expanding access through AI.
How could the business get trusted answers without routing every question through analytics?
- Business logic was buried in individual Tableau extracts
- Predefined dashboard views could not cover every question
- Upstream changes could silently alter answers
What I owned and built
My ownership I owned the semantic model and its delivery practices, working with business, analytics, data science, and engineering partners.
- 01Definitions
Agree on what the metrics mean
I worked with business and technical partners to align metric definitions across five domains, giving reporting and exploration a common business meaning.
- 02Reliability
Make the logic dependable
I moved the logic into version-controlled SQL and dbt models with automated checks, lineage, and documentation, so changes could be reviewed.
- 03Self-service
Give the business room to explore
I brought reporting and natural-language exploration onto shared governed metrics, so business users could investigate new questions without a dashboard built for each one.
Define once, explore in different ways.
I made governed metrics reusable across reporting and natural-language exploration. Databricks Metric Views and Databricks Genie supported this approach: business users could ask new questions while staying grounded in agreed definitions.
AI supported delivery, too
I used Claude Code in Cursor to develop SQL and dbt models, versioned changes in GitLab, and reviewed and validated the outputs. Other engineers adopted the approach.
Tools & methods
Data engineering
- Databricks
- SQL
- Python
- dbt
Semantic layer & AI analytics
- Databricks Metric Views
- Databricks Genie
Visualization & delivery
- Tableau Desktop
- Tableau Server
- GitLab
AI-assisted development
- Cursor
- Claude Code
- Replit
Methods & practices
- ETL pipelines
- Semantic modeling
- Metric governance
- Version control & validation
- CI/CD practices
Development lifecycle
- Sandbox
- Development
- Production
What changed
Less dependence on individual requests
Ad hoc metric requests fell 65% as business users gained self-service and natural-language access to governed answers.
A consistent basis for decisions
Executives, forecasters, and analysts work from one governed layer instead of four datasets that disagreed.
Faster delivery of the foundation
AI-assisted development helped a large pipeline ship in two weeks instead of four, with review and validation kept in the process.
Key takeaways
Self-service starts with shared meaning.
People and AI can explore beyond predefined dashboards when the metrics underneath have consistent definitions and dependable logic.
Faster delivery still needs validation.
AI can accelerate the build, while engineers remain responsible for the design, review, and reliability of what ships.