I'm from Orkney and live in Edinburgh.

OVO Group

2019 - present
OVO Group is a leader in energy technology, serving 5 million customers through its retail brands - including OVO Energy, Boost, Spark Energy and SSE - and driving towards a zero carbon future. I've been developing web experiences for its customers since 2019.

Kaluza

April 2020 - present

I currently work on smart metering for Kaluza's retail energy platform, Orion, which serves the majority of customers of the OVO Energy brand and is rapidly scaling up. I'm in a team creating a React UI to facilitate smart meter bookings for customers on the platform and to allow internal management of smart meter operations.

Spark Energy

September 2019 - March 2020

I worked on the My Account customer self-service UI for Spark - primarily on a project to create a React-based replacement for the legacy Angular version.

Maglabs

2015 - 2019
Maglabs provides bespoke digital asset management and workflow solutions to clients primarily in the retail and entertainment sectors, including NBCUniversal, M&S, Costa Coffee and Kraft Heinz.

Software Developer

April 2017 - August 2019

I worked on the initial version of MyBrandstream, a collaboration with sibling company Magnet Harlequin to provide a packaging design workflow UI to its clients. This was a brand new app built with React and a Symfony REST API to replace several legacy systems, and incorporated data integration with both an external proofing tool and a FileMaker Pro database. Amongst the things I built were performant list components with react-virtualized capable of displaying large task lists efficiently, and an Elasticsearch database enabling full-text search for tasks and projects.

Support Developer

August 2015 - April 2017

I was part of a team handling site reliability and performance for legacy LAMP-stack workflow and digital asset management apps. This primarily involved handling bug reports from customers escalated from front-line support by identifying the root cause and applying code fixes where necessary.