Work

Where I've worked since my first developer job in 2000. You can also find me on LinkedIn.

2021 – now Netherlands

Inter IKEA Systems

Software Engineering Leader · Digital Technology Leader

Technical lead for teams including the IKEA Knowledge Graph and Modular Content Delivery. I set the architecture and direction for each team, help hire and grow them, and work with people across Range, Supply and Retail Concept to work out what they actually need.

It meant learning an area that was new to me: RDF, OWL, Turtle and graph databases, alongside GraphQL, headless CMS and Azure. I also built a recommendation engine prototype at a hackathon and presented it to the Knowledge Graph Alliance in Brussels.

2019 – 2021 Hoofddorp

IDEXX Animana

Senior Developer / Technical Lead · Frontend Chapter Lead

Technical lead for the frontend of Animana, IDEXX’s software for veterinary practices. I set the frontend roadmap, moved code out of the monolith into separate Angular apps, and brought in domain-driven design and OpenAPI, with pipelines that generated the API clients and types.

In my first three months we rebuilt and shipped the Client Portal, which launched in March 2020 and was used by over 10,000 customers. I also ran hiring for frontend and full-stack developers and the team’s first UX designer.

2017 – 2019 Amsterdam

Backbase

Lead Frontend Engineer, Developer Experience · JavaScript Developer

Started on the core Portal Client team working on libraries and CLI tools, then helped set up the Backbase Forms team at the end of 2017 as lead frontend developer. Within a year we launched a new Angular component library for dynamic forms, and I trained customers on-site in Europe and North America.

In 2019 I moved to lead developer experience for Backbase Flow, building the SDK and components banks used to build their own customer journeys, like onboarding new customers.

2016 – 2017 London

Tinynodes

Director · Interim CTO, VotesForSchools

My own consultancy, set up after being made redundant at Pebble Code. My main client was VotesForSchools, where I was interim CTO: moving their platform onto Docker with CI/CD, and helping them hand over to a new development team.

2014 – 2016 London

Pebble Code

Lead Developer · JavaScript Developer

Agency work on large Node.js applications with React, Angular and D3, plus experiments with Bluetooth LE, WebGL, the Web Audio API and Leap Motion, including sending data between devices with high-frequency sound.

I led two big projects. One was a customer intelligence app for AstraZeneca that cut weeks of manual report building down to a few hours, and won an AstraZeneca CEO Innovation Award. The other was VotesForSchools, a startup where pupils vote each week on a topical question, anonymously, with results from class level up to national.

2008 – 2016

Freelance

Developer and consultant

Alongside my jobs I took on freelance work, including the Cloud9 IDE (Ajax.org), Nearform, Mad Mobile and Motorola: Node.js platforms and upgrades, Android apps and Adobe AIR desktop apps. I was also a technical reviewer for the second edition of Node.js Design Patterns.

2012 – 2013 Edinburgh

FreeAgent

Frontend Developer

Looked after the FreeAgent website: performance work with New Relic, caching and CDNs, marketing pages and calculators in AngularJS, and a rebuild of the public knowledge base with the support team. I was also technical lead of the Customer Experience team.

2011 Edinburgh

Blonde Digital

Frontend Developer (contract)

PHP and JavaScript work on client sites, mostly Drupal, and some early Node.js projects.

2010 – 2011 Edinburgh

4Cast Risk Digital

Senior Developer / Equity Partner

Built the core product, a crisis management and emergency response tool for organisations, on Node.js and CouchDB with an ExtJS frontend.

2008 – 2010 Edinburgh

Ambergreen Internet Marketing

Web Developer

Client websites with Drupal, WordPress and jQuery, and some Flash and Adobe AIR apps.

2006 – 2007 Glasgow

No Half Measures

New Media Manager

Ran everything online for a music company, including the company and artist websites. I organised the UK’s first live gig by a band in Second Life, for The Hedrons’ second single. It was nominated for Best Artist Promotion at the 2007 BT Digital Music Awards and got a full page in Q magazine.

2001 – 2002

ZZICT

Lead Game Designer

Lead designer on a first-person shooter at an independent games studio: the story, characters, weapons and design documents.

2000

MGt

Junior Web Developer

My first developer job: maintaining Perl and PL/SQL scripts and helping on client sites.