About Me

Web developer turned full stack software engineer/SRE. Guilty of starting too many side projects destined never to see the light of day and then adding Kubernetes to try and manage them all efficiently.

Currently interested in new opportunities - reach me on LinkedIn.

Technologies Used:

Word cloud/List of technologies, platforms and products I use or have used in depth in the past (in no particular order of proficiency or preference!):

Rust, JS, TS, React, Various CSS frameworks, K8s, Helm, Flux (GitOps), Terraform, Bazel, Docker, Istio, AWS (EC2, VPC, EKS, S3, Cloudfront, IAM, Codebuild, RDS, Elasticache, Elastic Beanstalk, Cognito), GCP (GKE, GCE, PubSub, Cloud Build), Github Actions, Postgres, Selenium, Jest, Cloudflare (CDN, Access, Argo Tunnel), Prometheus, Datadog, ELK, Jenkins, Make, bash, Lerna, Grafana, K3s, NGINX

Used but not in depth (usually interacting with on a tooling basis):

Python, Gradle, Kotlin, Java, SBT, Go

Timeline/List of Projects & Experience:

A high level overview of some of the things I've worked on with a more details on personal projects.

2019-Present: Personal Projects

Website Builder Platform

Left my previous engineering role at YNAP to execute on a startup idea to build a website building platform, and worked as a digital nomad whilst traveling in SE Asia. Realised whilst working on it that building something similar to Wix/Shopify/Webflow using a similar concept to AirBnb's Server driven design was a little too ambitious for a solo dev project, and at around the same time I heard about an interesting opportunity in the crypto space:

Ethereum DeFi Liquidator

This project has its own page as not to take up too much of the page. Click here for details.

Crypto HFT/Market Making

After moving on from the liquidator but in a similar ruthlessly competitive arena, I decided to turn my skills at market making (as I was not in the speculation game - however with hindsight that would have been the significantly easier play given the prices you can see in the relevant screenshots).

  • Much faster feedback loop, huge datasets available, and 24/7 action, rather than days of no activity
  • Much cheaper and easier to "test", can trade with tiny amounts and trading happens 24/7 in crypto markets
  • Javascript was not quite up to the task with low latency/high throughput computation requirements and so I decided to learn a lower level language and settled on doing the next iteration in Rust for various reasons.
  • Profitable, with 500m+ USD traded in 2021, 1.1bn USD to date using proprietary algo from scratch (limited public details on algo - contact me directly)
  • Now trades millions of dollars a day without any manual input at a very high multiple of capital rotation

2021-2022: Agora (Contract)

Worked primarily on DevOps and tooling on a contract basis helping to improve developer experience and platform resiliency for the Agora apps.

  • Modernized infrastructure, migrated almost all the infrastructure to Terraform and AWS EKS
  • Implemented SSO auth using G Suite for new multi AWS account setup, mapping groups to AWS/K8s roles
  • Set up and configured Istio & Datadog, for end-to-end tracing and monitoring all the way from iOS through all backend microservices
  • Migrated build/tooling from separate repos to a Bazel monorepo for rapid cached "delta builds" of the various GRPC microservices
  • Set up FluxCD paired with Github Actions for GitOps workflows

2016-2019: YOOX Net-A-Porter - Senior Software Engineer / SRE

  • Worked on features and supporting existing frontend systems and on the new frontend applications and infrastructure for the company wide replatforming project
    • On-call OOH support for Mr Porter
  • Core contributor to the internal multi brand, multi team frontend Javascript Lerna monorepo
    • Worked on build pipelines, tooling and webpack configurations - optimizing both build speed and app performance
    • Worked standardizing structured logging, metrics and trace propagation across the stack to ensure observability and monitoring for our node server apps, also leveraging our service mesh in Istio
    • Built custom tooling and integration (running local puppeteer instances in docker containers in both CI and locally for Jest Image Snapshot to use Enzyme snapshots along with generated CSS (by sending the combined markup string to puppeteer via setContent()) within the multi-brand frontend monorepo "YOS" to facilitate visual unit testing. Image snapshots committed to git and made understanding CSS changes in pull requests much easier by visually showing the changes, speeding up PR’s massively for all frontend teams, and also catching regressions in the builds locally and in CI.
    • Also built a custom test runner for Selenium cross browser testing to parallelize and speed up and did a talk in SF at SauceCon 2018 explaining https://youtu.be/QYFMNY9tjGw?t=836
  • Architected and built out the build/deploy tooling/structure for frontend apps and environments, using continuously versioned Helm charts and git tags for each apps and "umbrella charts" in different repos for multi application environments.
  • Led small team that replatformed entire frontend rendering tier collection of microservices from Elastic Beanstalk to Kubernetes.
    • Implemented Istio service mesh for telemetry and traffic management
    • Achieved ~70% Cost savings on new frontend infrastructure, by leveraging spot instances in both dev & prod, short lived feature branch environments running multiple configurations and scaling back all non-critical environments outside of working hours, and using kube-descheduler to aggressively bin pack microservices
    • Fostered collaboration between ops and dev teams, and did so with several teams across the organization, helping containerize their apps and streamline and align their deploy pipelines
  • Built custom internal UX tool “Slipway” to create UI/UX on top of GitOps deployment model in a hackathon that became the standardized release tool internally.

2015-2016: Dojo - Full Stack Developer

Sadly Dojo no longer exists

First job as a developer, responsible for the public facing website version of the app, and also the internal admin panel.

2014-2015: CarSpot

CarSpot was an old learning project that was highly beneficial in getting my first developer job. It was an "instagram clone" Android/iOS app powered by Meteor for spotting exotic supercars.

2010-2012: Blue & White Locations

Blue & White locations was a ski chalet rental agency I founded, listing some of the worlds most exclusive ski chalets and villas. Built using Wordpress fully bespoke theme and custom post types to facilitate a property searching website. (Website archived)

2008-Present: Particle Digital

Designed built, and still currently host websites for local businesses primarily using WordPress. Also a G Suite reseller and IT support provider.