In the past I completed over 130 sessions on Codementor.io!
I'm a consultant developer who's been coding for almost 20 years now: 15 of those years professionally. I mainly work in Rust, Rails, Elixir and Typescript these days, but I've built things in languages like Go, PHP, Python, and Perl. I also write a lot of Emacs lisp for fun, since I use Emacs as my editor. I've had the opportunity to have large multi-nationals on my personal client list such as Mozilla, IBM, 888.com, Tennents Larger (C&C Group plc) and multiple large financial businesses. I've also done consulting for Sequoia Capital, The European Commission, and
Outside of Freelancing, I'm currently working as a contractor for a startup based in England. In the past I've operated as an employee for agencies and product companies, as well as co-founding small-stage startups with others, some of which were successful enough that I was able to sell equity.




Theo is a pre-revenue sports-tech company, building wearable tech devices aimed at pro-athletes who are training through recovery.
...Theo is a pre-revenue sports-tech company, building wearable tech devices aimed at pro-athletes who are training through recovery.
As Lead engineer at Theo, my responsibilities included re-implementation of the backend infrastructure, development and implementation of the core algorithm, working closely with a Mathematician and Biomechanist to deliver a high performance, concurrent and test-driven library in Rust, packaged into a C++ Turbomodule for use with React Native for iOS devices.
I wrote a multi-platform rust command-line application which collects stream data concurrently against multiple connected BLE devices and record their sensor data for analysis during a motion-capture study with Strathclyde University. I also maintained and improved the firmware of the core ESP-32 device, including implementing a high-performance encryption algorithm for the bluetooth stream. Managing a team of 2 engineers, as well as a Mathematician and Biomechanist, my role included day-to-day steering and coordinating of the team, including task allocation and general office management duties.
I reimplemented our entire backend infrastructure from scratch, moving from GCP to budget host Hetzner, reducing server costs by over 80% in the process. I built a fully automated CI/CD pipeline using self-hosted github actions, which allowed us to deploy our backend and react native codebases. I moved multiple external services to self-hosted variants, further reducing the business' subscription costs, and managed all of this complexity using Nix and NixOS in order to declaratively define our configurations in a way that can be reused across our stack and from within local dev environments. The result was a fully integrated solution for our business, which was also significantly cheaper to maintain, and built for scale.