Galway, Ireland · Product & UX Analytics
Data analyst working with event-level product data. I instrument websites with Contentsquare, analyse behaviour in Snowflake SQL and Python, and build dashboards where every number has a written definition and can be traced back to source.
How I work
Product decisions should be based on what users actually do, not on guesswork. Each project below runs this loop end to end.
Set up tracking that reflects real behaviour: tag deployment, event definitions and page-group mapping, kept accurate as the product changes.
Work at the level of individual user actions: sessionisation, funnels and journeys, in SQL over cloud warehouses and in Python.
Reconcile against known baselines, compute the same answer two independent ways, and chase discrepancies to root cause. This includes AI-generated output.
Dashboards people rely on, definitions written down, and findings presented clearly to technical and non-technical audiences.
Case studies
The charts below use the actual numbers from each project. Hover over any bar or point for the detail. Each project links to its repository, where the SQL, notebooks and source exports are versioned.
884,474 e-commerce events analysed through a layered RAW to CLEANED pipeline in Snowflake, ending in a Power BI dashboard. The most important result wasn't a number, it was a definition.
The 18.8 point gap comes from the aggregation level alone. The session-level figure is the one reported.
Sample: 7 sessions, 120 page views. Reported as directional, with the limitations written down.
To get real setup experience I deployed an open-source storefront, added the Contentsquare tag, and analysed the telemetry in Python. The most useful part was finding and fixing a problem in my own setup:
Exploratory analysis of e-commerce transactions in Pandas: spend distribution, quartile value segments, and category, payment, pricing and discount behaviour.
45% of revenue comes from the top quartile of customers. The four segments are the same size, so the value difference is real.
AI-assisted analytics
Every one of my repositories states where AI assistance was used, because generated output is a draft, not an answer. Before anything I produce reaches someone else, I read the SQL for grain and join logic, reconcile totals against a known baseline, and where it matters, compute the same answer a second independent way. That review step is how a 69.11% "conversion rate" became a defensible 50.31%.
Click a card to see it in the terminal →
I've written this method up as a reusable skill: a versioned instruction file with runnable SQL, a Python export-QA module and MCP setup, so an agent (or a colleague) can follow the same validation loop I do.
Read the skill: ux-analytics-validationAbout
Before data, I was a self-employed barber for a decade. That work is where I learned to listen for what someone actually needs, which is not always what they first ask for, and to keep their trust when I disagree with them. Those habits carry straight into working with stakeholders.
The change took two qualifications back to back, a Level 7 in software development and then a Level 8 Higher Diploma in Data Analytics, completed while working. Since 2024 I've been a financial data analyst at Infosys BPM, doing data quality on mutual fund and ETF data where mistakes have real consequences: cleansing, metadata validation, reconciliation against source, and chasing every discrepancy to root cause, at a measured 99.4% accuracy average with regular 100% weeks.
The projects on this page are how I built product analytics experience deliberately. Not tutorials: a real instrumented site, a real cloud warehouse, and dashboards whose numbers I can defend line by line. Fluent in English and French.