Current work
These are the products and apps I've built since going solo at the start of February 2023. I've been busy with consultancy work for most of 2024, but I'm determined to ship more stuff by the end of the year!
- Free tool
GitInvoiced (Nov '24)
Turn your git commits into professional invoices. 100% free, 100% in-browser.
gitinvoiced.com
- Free tool
gitbox (Oct '24)
Your git contribution graph, reimagined: hour-by-hour, colour-coded by project.
gitbox.co
- Desktop app
DeskVault (Sep '24)
All of your Stripe data, from all of your accounts, all in one place.
deskvault.app
- Consultancy
Consultancy (Jan '24 - ongoing)
I'm currently consulting 3-4 days a week, likely until the end of 2024.
stronglytyped.uk
- Desktop app
Stackman (Nov '23)
The little mac app to manage your Node.js dev stacks.
stackman.app
- Desktop app
Supasight (Oct '23)
Manage users across unlimited Supabase projects from a privacy-focussed desktop app.
supasight.co
- SaaS
Shipshape (Sep '23)
Beautiful, blazing-fast Vercel deployment dashboards.
shipshape.dev
- SaaS
Digest Diff (May '23)
Let a codebase's commit history tell you its story using the power of Artificial Intelligence.
digestdiff.com
- SaaS
LaunchLoop (April '23)
Zero-config, AI-infused holding pages for makers serious about launching.
launchloop.co
- SaaS
fitIQ (March '23)
Gain insight into your long-term health, fitness, sleep and recovery trends with the ultimate WHOOP® data analysis and visualisation tool.
fitIQ.io
- SaaS
Feedback Rocket (February '23)
Start collecting website visitor feedback with a single line of code.
feedbackrocket.io
Selected past work
Some past employment, open source projects and other miscellaneous work I've done over the years.
Permanent Employment
Genesis Global (VP, Platform Architecture)
A constantly evolving tour of duty involving technical leadership across several different teams within the business. Highlights include tweaking, tuning and battle-testing a Kafka-centric pre-trade bond data connectivity network processing, striving to meet extremely low-latency and high-volume throughput requirements.
Flutter International (Senior Principal Engineer)
Responsible for the technical stewardship of four backend teams focussed on replacing a third-party Sports betting engine with Flutter’s in-house platform. The role involved empowering the Principal Engineers embedded in these teams; ensuring they were confident and comfortable with their domain and associated remit. I also provided a consistent lens into and a consistent voice out of these teams when dealing with other teams, wider program stakeholders and colleagues across the ever expanding number of divisions within the Flutter group.
Sky Betting & Gaming (Principal Engineer)
Brought in to lead a team which had inherited a large, complex, idiosyncratic platform which was unloved, poorly understood, and the cause of a disproportionate number of high-priority customer impacting incidents. The task at hand was twofold: galvanise a lethargic team and stabilise a difficult platform. The initiative led to an improved codebase, broader understanding of the platform, and an almost complete eradication of P1 incidents related to the platform.
Software as a Service
Finch
My former flagship product and first foray into the world of Software as a Service, Finch allowed secure, instant previews of local websites on any internet connected device. The USP compared to the main competitor in the space, ngrok, was an Electron-powered Desktop GUI making the tool accessible to a far wider range of developers and designers.
Open Source
BootboxJS
Wrappers for JavaScript alert(), confirm() and other flexible dialogs using Twitter’s bootstrap framework. With 5,000 stars and counting, Bootbox is kept alive by a fantastic small group of core contributors without whom it would’ve withered away years ago.
Decking
A Docker helper to create, manage and run clusters of containers. Think Fig, before it became docker-compose. So near yet so far.
Jaoss
An MVC PHP framework focussed on speed and testability, which I used to use for the majority of projects I built during my past contract / freelance career.
Contract Roles
Valtech (Software Engineer)
A year-long contract working on a high profile Government contract. Although predominantly a PHP role, over time I became the principle architect, developer and maintainer of the frontend JavaScript module system, as well as the frontend build pipeline.
Sky Sports (JavaScript Developer)
A six month contract for Sky Sports working as part of an Agile team architecting & implementing a responsive website—also set to double up as a replacement to several native apps upon launch—for one of the brand’s flagship products.
Sky Betting & Gaming (Lead Software Engineer)
A one year contract for BSkyB working as a software engineer (later moved into the role of team lead) for Sky Bet.
Miscellaneous
Crimson Digital Ltd
One half of Crimson Digital Ltd involved in the planning, development and running of a 24/7, heavily trafficked SPA website. This system involved a free-to-play online game which attracted a huge amount of visitors from all around the world and as such required a rock-solid infrastructure and a unique, captivating game style.
Chess engines
I can’t play the game to save my life, but during the COVID-19 pandemic I got into chess, naturally culminating in building a few engines (evolving from JavaScript to Kotlin and ultimately Rust). Despite them being objectively mediocre at the game, they consistently beat me.
Advent of Code
I very belatedly got into AOC in 2022 and have been slowly working my way back through past years since, using it as an opportunity to cut my teeth on new (to me) programing languages. If you’re a programmer be sure to check out the 2024 edition when it rolls around in December.
Muzzle
I tried to learn Rust by writing a stack-based virtual machine and a high-level language which compiles down to VM bytecode in it. I called both of these things Muzzle, though I’ve fogotten why.