Download PDF

Summary

A dedicated, hard-working team player who is also just as comfortable when tasked to work on something individually. Takes pride in all aspects of work to ensure highest quality results. Able to think of innovative solutions and am not afraid to challenge the established routine if a better one is apparent. Thrives in a dynamic, fast-paced environment and possess strong leadership and organisational skills; able to motivate both self and others to exceed expectations. A PHP5 certified engineer, with over 10 years’ experience as a web developer in a commercial environment.

Work History

Jan 2016Present

Head of Engineering

On Track Retail

Responsible for hiring permanent and contract members of staff

Managed a team of 20 developers

Performed capacity planning

Conducted code reviews and one to one sessions with the team

Hosted architecture planning sessions with the team

Planned out a refactoring and technical debt repayment timeline

Remained about 20% hands on with doing Scala code and DevOps work

Developed improved release pipelines for all environments

Refactored areas of the Scala codebase to better utilise the DevOps utilities we had at our disposal

Produced proof of concept for moving towards containerisation

Refactoring Ansible playbooks for moving production environment to AWS

Migrated Jenkins build jobs to Travis and Artifactory

Administered the production MySQL Galera Cluster

Jan 2016April 2016

Interim CTO

On Track Retail

Restructured a team, post launch, to maintain a live product and continue to drive it forward

Responsible for hiring permanent and contract members of staff

Managed a team of 20 developers

Performed capacity planning

Orchestrated releases with multiple 3rd parties

Nov 2014Jan 2016

Software Engineer / DevOps

On Track Retail

Contributing to various Scala micro services, communicating internally over RabbitMQ

Writing REST APIs in Scala with accompanying RAML documentation and integration tests

Built a testable deployment pipelines for all microservices using Jenkins and Ansible.

Developed Ansible playbooks and roles from installing Scala micro services packaged as deb files to setting up a MySQL db cluster of 7 nodes

Benchmarked and optimised MySQL Galera Cluster

Oct 2010Nov 2014

Technical Team Lead

Quidco.com

As well as leading technical projects with a team of developers, my responsibilities included System Administration and DevOps Engineering work

Introduced the company to Continuous Integration and Continuous Deployments

Migrated the technical team to using Puppet and Vagrant

Performed hardware upgrades and migration of databases to new servers

Developed an in house, self documenting, API framework 

Began to break down a monolithic code base into micro services

Separated sensitive systems into self contained API service to vastly reduce the scope of PCI compliance

Conducted one to ones with developers in my team

Took the role of Scrum Master for my team

Oct 2006Oct 2010

Senior Developer

Assertis

Planned out and executed technical projects as an individual and as the leader of a small team of developers.

Courses & Certificates

2016

Running Container-Enabled Microservices on AWS

Course Academy

Attending in July

  • Overview of containers on AWS
  • Introduction to microservices-based architecture on AWS
  • Scaling container-based applications
  • Integrating Amazon ECS with other AWS services
2011

MySQL Performance Tuning

Oracle University
  • Performance Tuning Concepts and Tools
  • Memory, Connections, and Threads
  • Tables, Files, and Logs
  • Statement Monitoring, Sort Buffer and Query Cache
  • InnoDB Storage Engine
  • Schema Design and Performance
  • Query Optimization
  • Troubleshooting Performance Issues
  • Hardware Optimization
20032006

BSc, Computer Science

University of East Anglia

C, C++, Matlab, Java, J2EE

Final year project: WYSIWYG editor for writing LaTeX documents, written in C# .NET