Thomas Payne

Software Engineer

About

I'm a highly motivated and enthusiastic software engineer determined to deliver measured customer value with innovative solutions. Comfortable taking on blank canvas green projects or iterating on an existing codebase to bring in modern engineering practices that can be picked up by all and stick.

Employment

  • Senior Software Engineer
    Anaplan

    Jan 2022 - Present

    Collaborating across frontend and tooling to deliver value for customers and colleagues. Contributed in a highly skilled team responsible for creating sophisticated UIs in a complex domain, empowering specialised users to effectively model the complex requirements of their business. Working as a Tech Lead for a number of projects I was responsible for user story generation and worked closely with Product and UX. I led refinement & estimation sessions with the engineers as work was scoped out and encouraged knowledge sharing and problem-solving through mentoring and pair programming sessions.

    Highlights
    • Joined a small, fast-paced team to replace a Makefile derived dev stack with one utilising a local kubernetes cluster and local processes
    • Built out a recursive descent parser to apply formatting rules to a custom structured grammar
    • Worked to pivot away from expensive E2E testing to lightweight component testing using Cypress
  • Principal Software Engineer
    Sky Betting and Gaming

    May 2019 - Dec 2021

    Responsible for defining the software architecture and technologies used by our delivery teams and supporting their adoption. Working collaboratively with the other principal software engineers and colleagues to establish a technology roadmap and supporting its incorporation into team roadmaps. This involved building business cases for their prioritisation and defining and proving potential solutions.

    Highlights
    • Led work to define frontend software architecture and get buy-in and adoption from all delivery teams
    • Worked to break down a monolithic codebase into distributed services (SAAS) with clearly defined interfaces and responsibilities
  • Tech Lead / Lead Software Engineer
    Sky Betting and Gaming

    Jun 2017 - May 2019

    Tech Lead for cross functional team focusing on delivering real, measured, customer value following our software architecture principles. I was responsible for leading the team through the business problem towards potential solutions, organising and sequencing the work and monitoring the progress. This was achieved through close collaboration with solutions architects, senior engineers and the product leads.

    Highlights
    • Led the development of a highly performant React/Redux application that effectively handled multiple real-time data changes per second via a websocket
    • Played a key role in upskilling the team to proficiently develop type safe applications with TypeScript, resulting in improved overall productivity and quality
  • Senior Software Engineer
    Sky Betting and Gaming

    Sep 2016 - Jun 2017

    As one of the senior member of the team I was responsible for mentoring developers from graduate level to senior colleagues. I also worked creatively within the team to define technical solutions while also working outside the team to drive tribe wide technology improvement. The team worked mainly with react / redux applications but also owned and maintained a number application services preparing data for frontend consumption.

    Highlights
    • Built extensive experience with Git
    • Strengthened comfortable working in functional and object oriented programming paradigms
    • Able to develop and drive change on a short timescale when presented with an issue causing customer impact
  • Senior UI Engineer
    Sky Betting and Gaming International

    Aug 2015 - Sep 2016

    Working closely with a solutions architect and another engineer we built out single sign on (SSO) solution to manage login sessions across distributed services. In another team we built out React frontend with flux-like state management system allowing me to build a deep understand of how react and state management systems work. Projects involved collaboration and integration within teams in the same office and with teams and systems hosted by third parties.

    Highlights
    • Built modern, focused Node.js APIs and services following 12 Factor principles
    • Worked in agile environment working collaboratively towards solutions
  • Software Engineer
    Ticket Arena

    Apr 2015 - Aug 2015

    Working as developer / devops to replatform legacy PHP system in AWS using salt and form the building blocks for the rebuild of the site UI in react.

    Highlights
    • Deployed and configured a number of AWS native services
    • Strengthened experience in UNIX-like operating systems
  • Software Engineer
    Sky Betting and Gaming

    Dec 2012 - Apr 2015

    As well as designing and implementing solutions, my role involves reviewing and merging colleague's code following in-house and external guidelines. I am also one of the members of the team responsible for deploying code to test environments and ultimately the live platform through a CI pipeline. Outside solely technical responsibilities, I attend planning meetings where proposed work is split into tickets/tasks and sized to gain an understanding of time to delivery.

    Highlights
    • Integral member of the team which produced and supports the Sky Sports Super 6 website and app. The site is based on a mobile first, responsive design and has a regular weekly user count in excess of 700,000
    • Worked on optimising Node.js systems, consuming through RabbitMQ, supplying MongoDB with a view to improving performance in highly volatile usage patterns
    • Involved in load testing to ensure site capacity against projected demand
  • QA Automation Test Engineer
    Sky Betting and Gaming

    Jul 2012 - Dec 2012

    My role involved considering business requirements and planning automated testing strategies to cover those requirements. I worked closely with the development team to understand how the affected area worked, to allow me to plan how to exploratory test the feature, as well as build an impression of where possible regressions could be introduced. I also implemented test steps in behat in an attempt to achieve end-to-end test coverage.

Education

    2011 University of Sheffield BSc (Hons) Computer Science 2:1

Skills

  • Frontend

    • TypeScript
    • JavaScript
    • React
    • Redux
    • Relay
    • Webpack
    • ESNext
    • Jest / Mocha
    • Node.js
    • HTML5 / CSS3
  • Backend

    • TypeScript
    • JavaScript
    • Node.js
    • Kubernetes
    • MongoDB
    • GraphQL
    • MySQL
    • PHP
    • Jenkins
    • Docker
    • Git
  • Agile

    • Kanban / Scrum
    • CD / CI
    • TDD
    • Estimation
    • Ceremony Facilitation
    • Pair Programming

Interests

  • Walking

    A keen rambler you could bump into me scaling one of the Yorkshire peaks, circumnavigating a lake district lake or traversing a Welsh valley; I'll be the tall person, orange backpack flanked by a great dane

  • Photography

    Although I don't get out as much as I would like, I do enjoy capturing landscape scenes and noteworthy architecture using both digital and 35mm film equipment. In recent years I have built up an extensive portfolio of photographs during my visits to different parts of the world.

  • Climbing

    I developed an interest in climbing during my time at university, especially in bouldering. It seemed to be the default way to exercise in Sheffield as you are unable to travel more than a mile without finding at least one climbing wall. Now that I am located in Leeds the opportunities are not quite so abundant, but I try to indulge my hobby whenever I can.

References

Available on request

Tom Payne © 2023

Built with Gatsby