2026 - present · Business intelligence consultant
Reporting infrastructure
Built the Snowflake data models and reporting layer a private equity sponsor needs after an acquisition: traceable back to source systems, and meaning the same thing every quarter.
Context
A B2B SaaS company acquired by a private equity sponsor. After an acquisition, the reporting a company ran on internally is rarely the reporting its sponsor needs. The numbers have to be repeatable, defensible, and traceable... and they have to mean the same thing every quarter.
What I built
- Snowflake data models for ARR, revenue, P&L, and balance-sheet reporting
- A translation layer turning Salesforce CPQ business logic into documented, governed metrics
- Reconciliation between Salesforce and financial systems using controlled reporting grain and window functions
- Tableau reporting consumed by finance and by the sponsor
The hard part
The business logic didn't live in a data model. It lived in Salesforce CPQ: in quote configurations, contract amendments, and lifecycle rules written by people solving sales problems, not reporting problems. Translating that into governed analytics means making decisions the source systems never made explicitly: what a contract is once it's been amended four times, which revenue belongs to which period, and what happens when Salesforce and the finance system disagree about the same subscription.
It's also tempting to fix duplication in the BI tool, where you can watch the number correct itself immediately. But then every new dashboard re-derives the fix, and eventually one of them doesn't. Pushing it into the model makes the wrong number hard to produce rather than easy to correct.