Portfolio

Every project, written up end to end.

Dashboards, pipelines and automation delivered for sales, operations and finance teams — the brief, the build, the numbers that moved. Filter by tool, or search for the problem you are trying to solve.

  • 9 projects shown
  • 9 organisations
  • 2024–2026 delivery window

Skip to the project grid

9 of 9 projects

Screenshot of the CEMEA Sales Performance Dashboard: three headline metric cards above a bar chart of analyst hours per reporting cycle, 16 hours at Cycle 1 down to 1.5 by Cycle 8. CEMEA Pulse
TABLEAU

CEMEA Sales Performance Dashboard

Apple 2025 6 min read

Region-wide sales visibility for Apple’s CEMEA Sales BPR & Systems team — one Tableau model replacing a fortnightly spreadsheet pack.

top region by revenue, surfaced for stakeholders
€6.2M
of sales from the leading segment
39%
profit tracked in the latest season
€5.5M
  • Tableau
  • SQL
  • Google BigQuery
  • Python (Pandas, Playwright)
  • Microsoft Excel
Screenshot of the Freelance Automation & BI Solutions dashboard: three headline metric cards above a bar chart of manual hours per week across the automated processes, 38 hours/week at Baseline down to 7.5 by Wk 14. Freelance BI Suite
PYTHON · RPA · SQL

Freelance Automation & BI Solutions

Freelance 2024 — Present 5 min read

End-to-end data and automation delivery for small European teams — from first consultation to a deployed pipeline they own.

manual effort, via custom Python & RPA automation
−80%
solutions architected & deployed for multiple clients
End-to-end
ETL, EDA & predictive insight for forecasting
BigQuery
  • Python (Pandas, Playwright, Selenium)
  • SQL
  • Google BigQuery
  • Power BI
  • n8n
  • Git
Screenshot of the Ocean Drones — Autonomous Marine Data Platform: three headline metric cards above a bar chart of species classification accuracy by training round, 64 % top-1 accuracy at Baseline up to 91 by R8. DriftWatch
PYTHON · ML

Ocean Drones — Autonomous Marine Data Platform

FIAP Final-year project · FIAP 8 min read

A full-stack platform that deploys autonomous marine drones, streams their sensor telemetry and classifies the species they photograph.

predictive models & species image classification (Scikit-learn, TensorFlow)
ML
sensor pipeline (pH, temperature) + high-res imagery
Real-time
web app to deploy drones & visualise ecosystem health
Full-stack
  • Python
  • Scikit-learn
  • TensorFlow
  • FastAPI
  • PostgreSQL
  • JavaScript
Screenshot of the Demand Forecasting for an Irish Retail Group dashboard: three headline metric cards above a line chart of weekly forecast error (MAPE), 22.4 % MAPE at W1 down to 15.5 by W12. ShelfPulse
PYTHON · ML · POWER BI

Demand Forecasting for an Irish Retail Group

Grocery & convenience group, Munster 2025 7 min read

SKU-level weekly forecasting across 34 stores, replacing a spreadsheet that ordered on last year’s numbers plus a feeling.

forecast error (MAPE) versus the previous method
−31%
annualised fresh waste avoided across 34 stores
€214k
SKU-store-week forecasts produced every Thursday
11.4k
  • Python (Pandas, scikit-learn, LightGBM)
  • SQL
  • Power BI
  • Azure Blob Storage
  • Excel
Screenshot of the Subscription Churn Early-Warning Scoring dashboard: three headline metric cards above a line chart of monthly logo churn in the worked cohort, 1.9 % of accounts at Jan down to 1.39 by Oct. ChurnRadar
PYTHON · ML · CLOUD

Subscription Churn Early-Warning Scoring

B2B SaaS, Dublin 2025 6 min read

A daily churn score for 8,400 B2B accounts that gives customer success three weeks of warning instead of a renewal-week surprise.

median warning ahead of a churn event
23 days
ROC AUC on the held-out quarter, calibrated
0.81
logo churn in the cohort worked from the score
−27%
  • Python (Pandas, scikit-learn, XGBoost)
  • BigQuery
  • Cloud Run
  • dbt
  • Looker Studio
Screenshot of the Month-End Close Automation dashboard: three headline metric cards above a bar chart of working days to close, by cycle, 9 working days at Baseline down to 3 by Cycle 6. CloseFlow
AUTOMATION · PYTHON · SQL

Month-End Close Automation

Manufacturing group, five entities 2025 6 min read

A nine-day month-end close cut to three, by automating the reconciliation and consolidation steps rather than asking people to work faster.

working days to close, across five entities
9 → 3
manual finance effort per close cycle
−142h
manual steps replaced by 9 idempotent jobs
61
  • Python (Pandas, openpyxl)
  • SQL Server
  • Excel
  • Power Automate
  • Git
Screenshot of the Live Logistics Control Tower: three headline metric cards above a line chart of on-time-in-full delivery, 88.9 % OTIF at Wk 1 up to 98.3 by Wk 19. RouteWatch
POWER BI · SQL · CLOUD

Live Logistics Control Tower

3PL operator, Cork & Rotterdam 2026 6 min read

One live view across four carriers and two hubs, so a delayed consignment is a phone call the same morning instead of a claim three weeks later.

on-time-in-full delivery over two quarters
+9.4pp
carrier systems reconciled onto one consignment spine
4 → 1
data latency, against a previous 24-hour lag
11 min
  • Power BI
  • SQL Server
  • Azure Data Factory
  • Azure SQL
  • Python
Screenshot of the NLP Triage of Inbound Clinic Enquiries dashboard: three headline metric cards above a line chart of median first-response time on routine enquiries, 6.2 hours at Wk 1 down to 1.6 by Wk 12. TriageLens
PYTHON · NLP · AUTOMATION

NLP Triage of Inbound Clinic Enquiries

Private clinic group, Leinster 2026 7 min read

Classifying and routing 1,900 inbound enquiries a week, with a hard rule that anything clinical or uncertain goes to a human immediately.

median first-response time on routine enquiries
−74%
routing accuracy on the held-out sample
96.2%
of clinical-flag enquiries routed to a human
100%
  • Python (spaCy, scikit-learn, sentence-transformers)
  • FastAPI
  • PostgreSQL
  • Microsoft Graph API
Screenshot of the Anomaly Detection on Building Energy Telemetry dashboard: three headline metric cards above a bar chart of median time to detect an energy anomaly, 1512 hours at Baseline down to 4.2 by Wk 14. GridWatch
PYTHON · ML · CLOUD

Anomaly Detection on Building Energy Telemetry

Commercial property portfolio, 62 buildings 2026 7 min read

Unsupervised detection across 1,480 meters that finds a failing plant item in hours instead of at the quarterly bill.

annualised energy waste identified across the portfolio
€318k
median detection time, from 60+ days
4.2 h
half-hourly meters monitored continuously
1,480
  • Python (Pandas, scikit-learn, statsmodels)
  • BigQuery
  • Cloud Functions
  • SQL
  • Looker Studio
Next step

Got a reporting problem that looks like one of these?

Send me the shape of it — the data you hold, the decision it should support, the deadline. You will get an honest read on scope and sequencing, and whether it is a dashboard problem or a data problem.

Back to the top of the portfolio

Ask the AI Advisor