
Principal Solution Engineer · Salesforce
I'm a Solutions Engineer at Salesforce. I build demos for some of the world's largest banks — and the tools that make those demos possible. Most of what I build ends up on GitHub.
A mix of tools I've shipped and ideas I'm writing about.
It started with laziness. What followed was a tool that cut demo prep from two weeks to two hours — and unlocked demos like Sentinel.
Build complete, realistic Tableau Next demos end-to-end from plain English. Describe the prospect, the persona, and the story — Claude handles the rest in under 2 hours.
What I built for Tableau Conference — and why it's the system I wanted to build still trying to solve for when I left PNC in 2021.
Open-source Claude Code skills for Tableau Solutions Engineers. No coding required — just describe what you want to build.
End-to-end Tableau Next demos — semantic model, Concierge AI, visualizations, and dashboard — from plain English.
Automated Pulse metric demos with synthetic data, engineered signals, and group subscriptions.
New tools as they get built. Follow on GitHub to see what's next.
Thoughts on Tableau, Salesforce, AI, and where agentic analytics is headed.
It started with laziness. What followed was a tool that cut demo prep from two weeks to two hours — and unlocked demos like Sentinel.
What I built for Tableau Conference — and why it's the system I wanted to build still trying to solve for when I left PNC in 2021.
Why the semantic layer is the most underrated piece of the Salesforce + Tableau story — and what it actually unlocks for AI.

I'm a Principal Solution Engineer at Salesforce. My job is to help some of the world's largest organizations understand what's possible with Tableau and Salesforce — and then show them, live.
Before Salesforce, I spent 11 years at PNC Bank building risk models and portfolio analytics for commercial banking. I know what the problem looks like from the inside — the data was always there, the platform to act on it wasn't. That experience shapes everything I build now.
Most analytics tells you what happened. I'm more interested in what happens before you know to look — the client who's leaving before anyone notices, the risk that hasn't surfaced yet. That's what I keep building toward.