00

I've run delivery from both sides of the line.

Four years on a glass container line at Visy: 18 people, 24 hours a day, 365 days a year. Two years building and shipping software, most of it with AI. I plan technical work at task level and keep it moving: boards, cadence, dependencies, budget, and a straight answer on what is progressing.

David Wells
David Wells
Ran
A 24/7 production line, 18 operators, three shifts
Delivered
Four capacity projects worth about A$500k a year, and an A$200k safety pilot scaled site‑wide
Qualifying
MSc Project Management, 93% · PMP exam October 2026 · BE(Hons) Mechanical
Builds
Next.js, Supabase and Claude. About 200,000 lines across twenty repositories
Seeking
Technical project and delivery roles, Barcelona or EU-remote
Base
Barcelona, Spain · CET · English (native) · Spanish B2
Status
Full Spanish work authorisation, no sponsorship required
Papers
CV (PDF) · LinkedIn
Barcelona · CET
01

Watch a project run

A 26 week AGV rollout through a plant that cannot stop, played back in about ninety seconds. Seven decisions and what each one cost.

I learned this one the hard way. In an operation that cannot stop, the delivery method is the business case. A payback built on labour savings is thin. Production lost to your own installation wipes it out, and it lands in a different budget line from the capex, where nobody is watching for it.

03

And I build the software

Each one starts with a real problem I had, usually from the floor, not a feature list. In a delivery role it also means I can open the codebase, follow what the engineers tell me and check it myself.

Built
B-01 TypeScript · Next.js · about 40,000 lines · 216 tests

A four plant glass network and the operations platform that runs it

The problem

I spent four years on a glass line where the numbers that ran the plant lived in a dozen places that did not talk to each other: production here, quality there, a shift handover that depended on who was on and what they remembered to say. Nobody had the full picture until it was stitched together days later, by which point the decision that needed it had already been made.

What I built

I built the operations platform I wished we had: four plants, eight furnaces and eighteen forming lines, with more than thirty screens showing control room, quality, planning and cost from one source of truth. Nothing in it is a guess, so the tests check that the numbers reconcile, glass in against glass out, and a plant manager who disagrees with a figure can be shown the assumption behind it and watch it change. The question answering layer on top scored 22 of 22 on questions I wrote and 0 of 12 on the first set someone else wrote. The zero is the number I trust, because nobody tuned it.

B-02 Next.js · Supabase · Claude · 506 unit tests · closed source

Vera, a CSRD reporting platform that became a company

The problem

CSRD makes every large company in Europe report on its sustainability impact, and the step that decides what actually goes in that report, the double materiality assessment, is the one part of the regulation nobody has a method for. The standard states 99 provisions and leaves the hardest of them undefined, so the job lands on whoever is free, with no benchmark and an audit opinion riding on the result.

What I built

Vera takes a company through that assessment properly: scope, thresholds, evidence and a workpaper an assurance provider can actually read. The AI drafts and finds gaps behind guardrails that stop it inventing a disclosure, and every call is metered so the running cost is a tracked line, not a surprise. Writing it up as a congress paper found the one failure the software itself could not catch: a required field for a threshold's reason accepted an empty string, so a placeholder note could ship straight into a client's workpaper. I found it because I went looking. Fixing it was one validation rule, not a research problem.

B-03 React · deterministic solver · Claude engine behind a flag

A timetabling agent that flags what it is unsure of

The problem

A university was building its master's programme timetable by hand in a spreadsheet every term: matching lecturers to classes against language, availability and workload, with no record of why a given match was made and the whole thing redone from scratch the next term.

What I built

I built an agent that assigns what it can and shows the score behind every assignment, so a coordinator can see the reasoning and override it. Where the pool is thin or the constraints genuinely conflict, it labels the assignment for review or as a gap instead of guessing, which is the decision that mattered after scoping with the timetabling staff. The demo runs a free deterministic solver with the same answer on every load. The first version handed the whole problem to Claude at about five cents a run, and is one flag away from switched back on.

Also This site, on Astro with Claude Code, no framework and no external requests. Messaging agents on the Anthropic API and Twilio, a Claude driven paper trading system against Alpaca, a group holiday planner, deadline and reporting automations. About 200,000 lines across twenty repositories since 2024.

04

Education

Mechanical engineering first, project management on top. The floor gave me the practice. This is the theory.

MSc MSc Project Management EAE Business School, Barcelona, with Universitat de Lleida · Taught in English · 93% average October 2025 to 2026 93% average
PMP Project Management Professional Project Management Institute · Exam October 2026 2026 Certification
BE BE(Hons) Mechanical Engineering University of Auckland · Second class honours, first division 2015 to 2018 Bachelor's
LSS Lean Six Sigma Green Belt CBIS · Harvard Business School Online CORe alongside it Certification