• Break

    November 2017 - Present

    Focusing on my self-learning and open-source projects before leaving London in December and travelling Asia from January.

  • Contributor


    August 2016 - Present

    Producing and editing an online video course covering the Web Audio API, as well as writing tutorials on various subjects, including Web Audio and Test-Driven Development using JavaScript.


  • Senior Software Developer (Contract)

    Trainline (via YLD)

    April 2017 - November 2017

    Contributing to a number of projects and libraries with React, Redux, Node.js, RxJS, and TypeScript. I have implemented frontend and backend logic for a number of features, particularly those concerning authentication and user registration.

    The main desktop codebase is presented as a monorepo. As a result of a large number of contributors, we run guilds to ensure that all teams are aware of any major and potentially breaking changes; I am responsible for the Node.js branch, which covers updates to our backend-for-frontend endpoints and general server-side functionality.

    I have also worked with the frontend architect and leads to establish cross-team technical meetings.

  • Senior Software Developer (Contract)

    Channel 4

    January 2017 - April 2017

    Developing features and apps for the Channel 4 web team using JavaScript, Node.js, React, and Redux. The website is powered by a series of Node.js services which proxy an OAuth 2.0-protected API and render a basic skeleton page; application logic is typically bootstrapped on the client-side. Said website is accessible and marked up with valid and semantic HTML5.

    This was a brilliant team and the technical standards were very high, but I had to leave due to Channel 4's decision to outsource its software development projects.


  • Software Developer


    July 2015 - December 2016

    Developing web apps for the In-Season Product Team, using React, Sass, ECMAScript 6, and Node.js.

    The main goal is to decommission the existing legacy Java solution by moving frontend logic to decoupled microservices. These are deployed to Amazon Web Services for fast, automated scaling during periods of heavy traffic. I have written open source npm modules for logic that can be reused throughout the company and the wider software engineering community, some of which are published via an automated continuous delivery pipeline running on CircleCI. I am also the SEO champion for the overarching In-Season Technology team, responsible for researching the latest best practises and pushing for improvement in this area, as well as liaising with our internal SEO team.

    Additionally, I mentored the junior developers in our team.


  • Software Developer - Sky News


    October 2014 - July 2015

    Maintaining and developing features for the responsive and accessible Sky News website using Node.js. The traffic-heavy website takes advantage of load balancing and caching to ensure 100% uptime. Test-driven development has been used within this position, and pair programming is commonplace.


  • Software Developer - NOW TV


    July 2014 - October 2014

    Continuing my work in the Microsoft team, undertaking WinJS (HTML5 and JavaScript) development for NOW TV's Windows 8.1 app. Other technologies used include Sass, Grunt, and Git.

    Within this role I have developed and documented a UI automation test suite for our app using Selenium WebDriver, SpecFlow (a .NET port of Cucumber), and a custom fork of RainbowDriver, a Selenium JSON Wire protocol implementation written in JavaScript and Node.js.

  • Associate Software Developer


    July 2012 - July 2014

    Developing software using Agile methodologies such as Scrum and Extreme Programming (XP). Test-Driven Development (TDD) has been prominent within this role and a variety of technologies and frameworks has been used.

    For the most part, I was an app developer in NOW TV's Microsoft development team with a focus on the Xbox 360 client. The application is developed in C# using the Xbox Application Development Kit (ADK/Lakeview), a framework based upon Silverlight.


  • BA (Hons) Computer Science and French, 2.1

    University of Chester

    2008 - 2012

  • Freelance Web and Software Developer


    July 2011 - August 2012

    Designing, implementing, and testing websites and software, such as Content Management Systems, around clients' requirements.


  • Online English Tutor


    May 2011 - September 2011

    Teaching English to French children, teenagers, and adults via video conferencing. Lessons were prepared by the company, including a script relating to the presentation shown on screen. Adult students were also permitted to provide their own materials, such as newspaper articles, for linguistic analysis and discussion.

  • English Teaching Assistant

    Collège Molière (L'Aigle, France)

    October 2010 - April 2011

    Teaching English to French secondary school students, aged 11-15. Usually, groups of up to 14 pupils were taught for 30-minute sessions surrounding various subjects of cultural and linguistic interest.


  • Junior Web Developer (Work-Based Learning placement)

    rECOrd LRC

    May 2010- June 2010

    Utilising ASP.NET, C#, and MS SQL, results returned by the organisation's search engine were limited to user-specific locations, defined in coordinates by administration via a content management system.


  • A-Levels: ICT, French, and Music Technology

    Baines Sixth Form

    2006 - 2008