I'm Sam, a software engineer based in London.

The hyper-connected world we live in today means we have a unique opportunity to deliver real world value to thousands or even millions of people by deploying code onto devices and networks. I think it's a special time to be involved with the web and I'm grateful to be a part of it.

I'm passionate about what I do and having fun doing it with amazing people inspires me.

I have worked accross the stack with various technologies and have a particular interest in all things JavaScript.



  • JavaScript (ES6 & beyond)
  • React, Flux/Redux and related modules in the ecosystem
  • BDD/TDD via Jest, Enzyme and alternative modules
  • Hybrid Mobile (mainly Cordova, some React Native)
  • CSS (usually BEM & preprocessor with autoprefixer etc)
  • Tooling - various (primarily Webpack these days)
  • NodeJS ecosystem & tooling (npm etc)
  • Comfortable with TypeScript or Flow
  • Personal interest in programming languages including Golang & Python
  • Personal interest in functional programming (& other programming styles)
  • Legacy skills: angular 1.x, php & more


  • Solid experience working in a containerised world: docker etc
  • Solid experience with AWS/the cloud
  • Expert debugger in the browser
  • CI/CD tooling (Travis, Gitlab, etc), unit tests & high levels of coverage
  • Coverage/static analysis eg Instanbul, CodeClimate
  • Reasonable experience & knowledge of databases
  • Reasonable understanding of data structures & their importance
  • Reasonable understanding of web accessibility
  • Reasonable systems experience: message queues, emails, security
  • Experienced working in Agile teams, Scrum & Kanban styles
  • Caching (it's simple but hard!)
  • Naming things (even harder!)



  • 2008-2012 BSc Web Application Development (University of Plymouth)

Past Work

The App Business X The Racing Post (November 2017 - July 2018)

The App Business X The Racing Post (November 2017 - July 2018)

Role: React/Redux JavaScript Developer (contract)

I worked on an embedded agile team delivering substantial upgrades to racingpost.com. By the end of this project, racingpost.com went from only single bets, to a fully featured betslip supporting multiples and accumulators accross 6 bookmaker partners, with a brand new user experience. The stand-out feature of this project was the quality of the betslip component we delivered, including 99.96% test coverage.

Key tech: React, Redux, Jest

Circus Street (April 2017 - November 2017)

Circus Street (April 2017 - November 2017)

Role: Senior Front-End Developer

I helped the team at Circus Street advance their online learning product by working accross their offering including the marketing website, the learning web application, the hybrid app and several internal management tools. This ranged from several greenfield React/Redux projects with 80%+ test coverage to maintaining an older Angular 1.X project. During this role I learned a great deal about Redux and had the pleasure of implementing several apps using it.

Key tech: React, Redux, Jest, Angular

Mentally Friendly X British Museum (October 2016 - March 2017)

Mentally Friendly X British Museum (October 2016 - March 2017)

Role: Senior Full-Stack Developer

I was a significant contributor to the new (as-yet unreleased) British Museum website. Our team delivered a large project that enables the museum to deliver a vast range of dynamic content to over 500,000 global visitors per month. We implemented a fully component-ized responsive website with a containerized backend that involved multiple levels of caching and used microservices-like patterns. This project really exposed the challenges of a content-heavy organization.

Key tech: Node, Laravel, Vue

HAIRCVT (2014 - 2016)

HAIRCVT (2014 - 2016)
HAIRCVT (2014 - 2016)
HAIRCVT (2014 - 2016)

Role: Lead Developer & Partner

I led a team of 2 from iterating prototypes, to MVP, to a product delivering record growth month-on-month. Our product was a Laravel/Symfony PHP monolith with a Angular 1.X front-end, with many more technologies and challenges hidden away - including message queues, cacheing mechanisms, a database migration, AWS deployment and a hybrid Ionic app.

Key tech: Angular, PHP, AWS

Google Nexus 5 (2013)

Google Nexus 5 (2013)

Role: Tech Lead

I led the technical side of Google's showcase site for the Nexus 5 phone that launched in 2013. A responsive, retina-compatible & parallax project with interactive 'moments', this site was visited by millions during the annoucement week. A challenging but rewarding project including integration with some internal Google systems.

Key tech: Angular, GSAP/TweenMax