Work with me

I’m available for freelance projects and collaborations, either on-site in Melbourne or remote.

If you think I could help, please do get in touch.

What I’m good at

What I’m curious about

I enjoy learning new things. I’ve done a bit of these things, but I’m keen to do more:

Ways I can help

What people say

Jamie Andrews – Co-founder of Loco2:

I first worked with Jon back in 2007 when we were both at Torchbox, and I was immediately impressed at how capable and confident he was despite being so young. When I started Loco2, Jon was the obvious choice to lead the technical work. I eventually persuaded him to become technical co-founder and CTO when he graduated from Oxford in 2011.

Over the next five years Jon did amazing things, from building outstanding software to designing and evolving our technical infrastructure as we grew substantially. It’s impossible to overstate Jon’s positive impact on the inception and functioning of the organisation as a whole. He brought a ruthless efficiency to decision-making and ensured that we consciously designed and questioned processes, whilst all the time safeguarding the agile, lean mindset that is at the heart of his professional philosophy. I learned a huge amount from him and it would be a pleasure to work with him again in future.

Jon would thrive at the heart of a small, highly capable team with a delivery-focused mindset. Equally I’m sure he would bring a lot to larger teams, provided he is given the agency to make positive changes. He has the patience and written communication skills to clearly outline the next steps he intends to take when tackling a problem, and is never afraid to be honest when challenges are larger or more complex than initially envisaged. This honesty and diligence, when combined with Jon’s obvious technical flair, makes for a highly effective skillset that is incredibly difficult to find.

Michael Morris – Head of Technology at Up:

Jon Leighton is an amazing developer. Jon’s breadth of experience and critical thinking ability make him capable of solving any problem (code or otherwise) he sets his mind to. Jon was an inspiration to our team through his ability to lead by example in terms of communication (eg commit messages) and also to contribute to other areas of our company. My standard for an engineer is, if assembling a team again, would I have a place for them? - In Jon’s case - absolutely.

Past work

Here are a few examples of things I’ve worked on.

Loco2

I spent four and a half years as Technical Director at Loco2. Our aim was to make it easy to book any European rail journey through a single website. I joined at an early stage, sat on the board, and played a key role in growing the business.

A big motivation for my involvement was the founders’ desire to use Loco2 to help mitigate climate change, by making it as easy as possible for people to take a train rather than a plane.

I worked on many things during my time there. Here are some that stand out:

  • Building up and guiding the technical team
  • Developing processes and documentation to keep the remote-first team running smoothly, such as: coding style guidelines, code reviews, on-call processes, error handling and deployment
  • Identifying and eliminating problem areas in the code base and infrastructure
  • Overhauling the ‘routing’ part of our software which identified which tickets were needed from which operator in order to make a complete journey
  • Developing our software architecture so that we were able to easily plug in new rail operators when we formed a commercial agreement with them
  • Reworking our hosting infrastructure to be more resilient and maintainable

Up

When I first came to Australia I worked at the new ‘digital bank’ Up. I learned lots of new things on this project, such as React Native, GraphQL, Relay and Flow.

One significant contribution I made was around the automated testing infrastructure. I discovered that end-to-end testing of mobile apps is very difficult to make reliable—our builds were often failing due to flakey tests. After working to find and solve various individual cases, I saw an opportunity to rewrite our testing code to avoid common problems and be easier to use. Completing this work resulted in a step-change in build speed and reliability.

Open source

I used to be very active in open source software development in the Ruby community.

  • I was part of the Ruby on Rails core team, and did a lot of work refactoring and improving the database layer, Active Record
  • I started a project called Poltergeist, which enables developers to use PhantomJS to perform end-to-end testing of web applications
  • I started a project called Spring which speeds up development of Rails applications by keeping them running in the background. Spring is now included in new Rails applications by default

Education

I have a BA in Computer Science from Oxford University.

Speaking

I used to give talks at technical events, before making a decision to step away from it.

Here’s a non-exhaustive list: