Finance Automation · Dublin

A qualified accountant who builds the systems finance teams run on.

ACCA. Finance automation with Power Query, Power Automate, Copilot and Claude — rebuilding manual Excel workflows around data extracted from Sage.

About

I work in finance at NORA, Ireland's strategic oil reserve body. Over the past year I've focused on replacing older manual processes in the finance function with automated, reconcilable workflows, using Power Query, Power Automate, Copilot and, increasingly, agentic workflows.

I build outside work too, using Claude and Claude Code. The foundation under all of it is five years of real finance: a €100M+ levy portfolio, FX execution, cashflow forecasting, and VAT compliance across three jurisdictions, backed by the ACCA qualification. I understand the finance because I've done the finance — which is what makes the automation worth trusting.

Automation at work

In use within a statutory body's finance function. Internal systems, so described in outline only.

Annual reconciliation
Two days of manual, multi-source work → one refresh. Power Query + Excel.
Tracking workbook
Several disconnected worksheets → one automated workbook, used across the team. Power Query + Power Automate.
Month-end variance
Static monthly reporting → a live exception-flagging dashboard.

Now extending this to a full receivables cycle.

Things I've built

Irish Sovereign Monitor

Live
A dependency-free dashboard in two halves. Irish sovereign debt: debt vs GDP/GNI*, corporation-tax concentration, ECB rate and 10Y spreads. Then oil: Brent in nominal and inflation-adjusted terms, in dollars and euro, pump prices and the EUR/USD effect, and the historical range of outcomes from comparable starting prices — ranges, not a forecast. Reconciled against known anchors.
HTML · Python · ECB / Eurostat / CSO / FRED · Claude Code

Data Divergence Monitor

Live · in progress
Tests whether official economic and trade statistics diverge from independent sources — satellite, shipping and trade-mirror data — and first whether the data can be trusted for backtesting at all. It isn't point-in-time aware, so a daily harvester now timestamps every observation. Pre-registered hypotheses; no LLM in the computation path.
Python · SQL · FRED/ALFRED · Eurostat · Cloudflare Pages

Bull Wall Bookkeeping

Built · private
A local-first bookkeeping application with correct Irish VAT3 treatment, hash-chained audit logging, and a built-in governance dashboard that tracks filing and compliance deadlines.
React · local-first · Claude Code

RoleHunter

Live
A full-stack job-application platform: CV scoring, ATS checker, pipeline tracker, and an autonomous scanner that pulls new roles daily and emails a digest.
Netlify · Cloudflare Worker · Anthropic API

Market Command

Live
A four-tab live market dashboard — equities by sector, crypto, bonds, commodities, and a narrative tab built from financial-news headlines.
Cloudflare Worker · Finnhub · CoinGecko

Energy Atlas

Live
An eight-tab interactive energy-intelligence tool — demand, source mix, regional and sector breakdowns, price dynamics, AI energy demand, and IEA scenarios.
HTML · custom SVG · sourced & fact-checked

Side projects

Built outside work, mostly around golf and sport. Different domains, same habits: mostly real users, live data, and checking the numbers against an independent source.

Golf trip leaderboards
Live multi-device scoring for golf trips and society events, configured to each event's format and course. Every phone sees each score the moment it's entered. Sold commercially.
Firebase Realtime Database · Netlify
The Card — golf stats tracker
My own shot tracker. A photo of my official score from the Golf Ireland app is read by Claude vision to set the 18 hole scores; I then add shot-by-shot detail to find where strokes are lost.
React · Firestore · Netlify Functions · Anthropic API
World Cup sweepstake
A live sweepstake for the 2026 World Cup, 29 entrants. Results came from two independent score feeds, with API calls scheduled to fit a 10-a-day free tier; team names were reconciled across sources, and every stored score and goalscorer was checked against Wikipedia's match records.
React · Firebase Realtime Database · football-data.org · ESPN
Fantasy golf draft game Private beta
A DraftKings-style draft game for the golf season. Live scores from two independent feeds, with automatic fallback and reconciliation between them, backed by 300+ automated tests. Launching 2027.
Cloudflare Workers · Firebase

Contact

Open to conversations about finance automation, finance systems and transformation roles.