About

In 10 words...

Experienced Fullstack Developer at Ground Control, using React/node - likes bikes.

In 20 words...

Experienced Fullstack Developer, currently working at Play Sports Network, currently using React/Node with styled-components - likes bikes a bit much!

In a lot of words...

I'm an experienced fullstack developer, currently working at Ground Control as a Senior Frontend Engineer. I've previously worked at Play Sports Network, (home of GCN, and a whole bunch more besides), Anderton's Music Co, a top-50 UK music retailer, and before that completed a Degree Apprenticeship and a number of years as a developer & Presales Architect at IBM.

These days, I'm working mostly on the frontend, focused on building performant, scalable, and accessible websites & web apps using best of breed modern web technologies - React, Next, Vue, Typescript, and more. I've been lucky enough to work with a lot of interesting technology over the years, from building chatbots and deploying Cloud Paks for clients at IBM, getting my hands dirty on a whole bunch of DB2 databases and building out infrastructure-as-code internally, to working to integrate legacy e-commerce systems into a headless frontend at Andertons, to setting up printers & networking at the Wimbledon Tennis champs! A few years back I would have called myself a generalist, now I'd firmly label myself as a frontend developer.

It's not just about the tech. I'm a firm believer in building an experience rather than a bunch of features, and I've spent a lot of my time working closely with UX & UI designers, aiming to bring out the best experience for users before jumping into a technical solution. Alongside this, I spent a number of years building prototypes for large industrial clients, using a "show not tell" approach to really showcase tech for good, as well as teaching & mentoring junior developers & designers on this approach through the IBM Digital Skills Academy.

I’m also a keen cyclist, & runner, riding & running as many nice places as I can whenever I get a chance.

Please contact me if you want to have a chat!