← Back

Selected Work

Things I've built

Featured Project

Speech-to-Dashboard: AI Report Generation

Built an internal tool that lets my team narrate requirements to AI and receive polished, interactive HTML dashboards — far beyond anything Tableau or Power BI can produce. The output is live in production across 10+ enterprise clients.

Hours → minutes to build a dashboard

10+ enterprise clients on the output

Replaced Tableau licences entirely

OpenAI APIClaude APISnowflakePython
Read case study →

Allied Health Data Platform — 8 Brands, One Truth

Built a unified semantic data model across an 8-brand NDIS allied health group — consistent business rules and definitions, row-level security, compliance flags, and dashboards used from CEO to individual clinician. Also automated tiered bonus calculations that replaced a month-end spreadsheet nightmare.

SnowflakePower BIPythonRow-Level SecuritySQL
View →

Pharmacy Payments Platform — Built Twice, Better the Second Time

Built a month-end payment calculation system for a pharmacy delivery company, then rebuilt it as a full customer data platform when Xero changed their API limits and broke the original solution. The second version gave both pharmacies and the business real-time visibility on orders and amounts owed — something the first version never had.

SnowflakeXero APIFivetranPythonSQL
View →

Automated Executive Commentary

Built Claude workflows that read structured query outputs and generate insight summaries in the voice of a senior analyst. Now embedded in the weekly reporting pack for multiple enterprise clients — not a gimmick, a genuinely better product than hand-written commentary.

Claude APIPythonSnowflakeSQL
View →

Enterprise SQL Pipelines — Making Data Trustworthy

Architected 200+ modular SQL models across Snowflake and Databricks for multiple enterprise clients. The goal was never the models themselves — it was giving leadership a data layer they could trust. Every metric defined once, tested, documented, and traceable.

SnowflakeDatabricksSQLPython
View →