Joseph Wynn
joseph@wildlyinaccurate.com
resume.wildlyinaccurate.com
Hello!

My name is Joseph Wynn. I'm a full stack web developer with a focus on performance and accessibility. My experience is with high-traffic, high-availability distributed systems at companies like BBC News and Time. I maintain some open source projects (github.com/wildlyinaccurate) and occasionally blog about my experiences (wildlyinaccurate.com).

Toolkit

Languages

JavaScript
Ruby
Elm
Haskell
PHP

Front-End

Web APIs
React
WebPerf
webpack

DevOps

AWS
Nginx
Apache
MySQL

Workflow

Git
Jenkins
Travis CI
Docker

Experience

Developer at SpeedCurve

September 2017 — Present

Principal Software Engineer at BBC News

August 2014 — September 2017

I lead the engineering team rebuilding the front page of BBC News with a rigorous focus on performance. The new front page is significantly faster, and drives better user engagement: bounce rate is down 2% and weekly return visits are up 9%. The front page is built with Node.js, composed of React components that are shared through an internal open source system. The components are exposed as HTTP endpoints and assembled by a page composition service.

I oversaw technical delivery of projects including defining the technical architecture and building continuous integration pipelines. I developed core features, mentored developers, defined code structure, and worked closely with other teams to deliver related features.

The tech stack included Node.js, Ruby, Go, AWS (EC2, ELB, S3, DynamoDB), Docker.

Senior Developer at Rightster

December 2013 — August 2014

When I joined Righster I took control of their video distribution front-end by introducing a modular architecture based on AngularJS and RequireJS. This enabled the team to effectively manage tens of thousands of lines of JavaScript without compromising on build speed or quality. I worked closely with the platform team to ensure their APIs enabled us to build an efficient presentation middle layer.

I introduced a Git workflow that streamlined our deployment process and reduced defects by cutting releases from a single branch and enforcing code reviews before merges.

The tech stack included PHP on the Zend 2 framework, PostgreSQL, Lucene, ElasticSearch, and deployments to EC2 instances.

Senior Developer at Time Inc. UK

May 2012 — December 2013

At Time Inc. I worked on building out a new API-driven mobile web site platform. During this project I became interested in automated testing as a way to improve the quality of our products. I wrote a smoke test tool that uses PhantomJS to check for common page-level errors, and takes a screenshot of each page to aid manual visual checks. This helped catch bugs quickly, and enabled us to deploy the platform several times a day with confidence.

I also introduced JavaScript unit testing to the engineering department and encouraged more automated testing during the monthly developer gathering. The slides from my talk are available here.

Developer at Chroma

April 2011 — May 2012

Working in a small close-knit team I architected and built a web interface used by bookmakers around the UK to monitor and set pricing in real time. To support legacy browsers, I chose to implement a long polling mechanism to achieve the "real time" functionality.

I also worked closely with Chroma's clients to create bespoke modules for the ExpressionEngine CMS, including an interface for managing email campaigns using the Campaign Monitor API, and a membership management tool for Racing UK Club.

Developer at Zeevo

June 2010 — April 2011

Using the CodeIgniter PHP framework and Doctrine ORM, I helped to build a booking and scheduling system used by tourism operators around New Zealand.

I was also involved in architecting and building a secure file sharing application using the Dropbox API.

Publications

A Hacker's Guide to Git (2014)

This book explains some of Git’s core concepts including basic object storage, commits, branches and tags. It also contains in-depth explanations about the different kinds of merging in Git.

LeanPubWildly Inaccurate

HTML5: Features and Limitations (2010)

An analysis of the (then) forthcoming HTML5 specification. The summary of this publication was displayed at the first annual CITRENZ conference, along with a live demonstration of some the new Google Chrome APIs.

CITRENZ (Summary Only)

Open Source

Below is a collection of my most popular open source work. You can visit my GitHub profile for a more complete picture of the open source work that I do.