Full stack web developer with over a decade of industry experience, specialising in implementing back end web services using Java technologies, but also quick to learn new languages and tools when necessary.

Utilising strong knowledge and experience of Agile practices, always looking to improve processes, and enthusiastic about maintaining great communication at all times.

Soft Skills
  • Agile/Scrum Practices
  • Communication
  • Coaching/Training/Mentoring
  • Running Meetings
  • Teamwork
  • Presenting
  • Documentation


Employment History

Current Day

February 19 2019

Danburykline – Full Time Developer

Joined Danburykline as a full time developer, to support SOROS development over the next 2 years.

October 29 2018

Danburykline – Freelance Developer

Long-term development support on SOROS, a large PHP webapp used by rail companies to improve operational efficiency.

October 26 2018

Ideal Outcome – Freelance Developer

Sole developer for a new adtech company, building their website, demo application, software infrastructure and backend RESTful web services.

May 17 2018

Dockleaf Digital – Freelance Developer

Primary freelance developer supporting Ruby on Rails websites managed by freepartners.com, hosted on Heroku.

April 23 2018

Grapeshot – Contract Developer

Part time, to assist a development team with getting their product enterprise ready and released. Mainly focusing on improving an AngularJS front-end application, with some backend PHP webapp work.

August 7 2017

Grapeshot – Contract Developer

Initially brought in to develop new front-end applications to in-development backend systems, for use by sales teams at a major trade show. Using Angular 4, SCSS, and RESTful services. Continued to assist on the development of the Grapeshot API services and developer portal.

February 28 2017

Jagex – Contract Web Systems Developer

Brought in to assist with the development and launch of a new product, combining multiple Java Spring Boot microservices with an AngularJS webapp, and a C++ client. Mainly responsible for designing and implementing the microservices, code reviews to improve and maintain quality, and integration of all elements. Personally launched the product internally.

November 28 2016

Leumas Digital – Freelance Developer

Responsive frontend development for multiple Shopify sites, using Shopify Liquid and Timber.

October 28 2016

Left Jagex to pursue other opportunities

January 28 2016

Jagex – Web Systems Development Team Lead

In addition to the software development commitments, I became the line-manager for my development team. I also helped push the department forward with adopting more industry-standard technologies, such as Spring Boot, Nginx, and well-designed microservices using RESTful interfaces.

November 28 2013

Jagex – Senior Web Systems Developer

Additional responsibilities include higher-level systems design, team mentoring, recruitment, software reviews and launches, and out-of-hours support. Gained experience managing a Kanban development team, which handled small high-priority bugfixes and feature requests.

April 25 2007

Jagex – Web Systems Developer

Java web services developer, implementing and maintaining bespoke internal staff and player-facing web applications. Quickly became productive in a proprietary web framework, using peer-to-peer communication between services, and custom data storage mechanisms.

March 25 2005

FoneStarz Media Ltd – Technical Developer

Web developer for mobile optimised websites for numerous worldwide operators, including T-mobile, O2, Vodafone, and MUMobile (Man Utd mobile). Became the main technical contact for all T-mobile and O2 mobile sites, and the MUmobile website. Liaised with multiple third parties, including design agencies and billing providers.


Public Bitbucket Repositories


  • Full Website

Responsive WordPress website using the Divi theme, running on https. Organised the hosting infrastructure, built the website, and provided simple training so that the site owners can update content themselves.

Contract Work: Video Categorisation Demo

  • Frontend

Angular 4 front-end application to demonstrate a video categorisation service. RESTful API calls to server-side processing systems. Additional javascript features such as video playback transcript following, and dynamic keywords tag cloud highlighting.


  • Full Website

This personal website, fully responsive. Set up WordPress.org install, custom domain, and heavy customisations of a simple theme. Implemented bespoke Portfolio, InfoCloud, Credits, and MindMap WordPress plugins from scratch. Also implemented robust plugin deployment bash scripts with logging and rollback functionality.

Contract Work: Jagex Project

  • Backend

I can't be specific as I'm still under NDA, however I will list the technologies I used. I will flesh out this description more once the project is released!


  • Full Website

My old 'corporate' freelancing website, fully responsive. Spring Boot application, with a custom Blogger.com API integration to read the latest posts and put them on the homepage. Cookie implementation for remembering new posts. Heavily customised template, personally upgraded to SCSS.

Chronicle: RuneScape Legends

  • Backend

Project lead of the server-side implementation of the website, setting up and customising HippoCMS with an NGinx reverse proxy managing the routing, and infrastructure and deployment implementations.

Chronicle Accounts System

  • Backend

Highly flexible new accounts system from scratch, to handle current and any new games, designed to be easy to add new games and authentication methods in the future. First used on the Chronicle standalone client, and website. This system has now been superseded.

RuneScape Seasonal Highscores

  • Backend

Project lead of the design and implementation of the server-side seasonal high-scores application. Highly flexible short-term high scores, configured by the game teams. Optionally repeatable, start/end dates, tracking any in-game metric. Any number may run concurrently, and a full history of past high-scores are maintained. Handles massive dynamic high-score tables of any number, huge volume of constant incoming data, ability to re-order the entire table in realtime if there's a ban or change in membership, and large numbers of page views.

Activity Tracker

  • Android

Track the rough proportion of time you spend doing various activities each day. Just a simple app I knocked together when I was curious how much of my day was spent doing unproductive things! This wasn't intended for formal release.

Configurable Randomiser

  • CLI Application

Occasionally, for personal projects, I've wanted a flexible means of randomising some fairly complex choices. This tool produces a specified number of optionally unique random results over potentially complex nested dataset ranges.