A migration of my homelab from Unraid to TrueNAS Scale, and from Docker to Kubernetes.
A political satire card game for Kiwijam 2024.
An infrastructure visualisation and mapping tool for GovHack 2023.
A community vote controlled automated bartender for TerribleHack 2023.
Coalesce • Apr 2024 - Present
This role involves working in a fast-paced feature focused environment. Working with a complex monolithic Typescript full-stack codebase with multiple build targets as it migrates to a modern architecture.
MATTR • Apr 2022 - Apr 2024
This role has involved supporting a newly introduced eventing system, developing internal code generation tooling and libraries using the TypeScript compiler AST (TypeScript, Protobuf, Kafka). The role also involved optimising for Kafka infrastructure costs, and with my team building a new external platform global control plane management API service (TypeScript, NodeJs, Express, Knex).
We implemented the global authentication plane using Auth0, requiring an in-depth understanding of the OAuth2 standard. Services are deployed to AWS and use Postgres running in RDS for primary storage. As a code owner, I am responsible for gate-keeping the quality of the codebase. I am a SME for eventing in this role.
Spidertracks • Oct 2021 - Apr 2022
This role involved extending the functionality of a JavaScript-based legacy React + Redux application and migrating it to TypeScript. This role also included the implementation of new Node JS express API endpoints to replace, expand and deprecate existing Java-based endpoints.
Fisher Funds • Apr 2021 - Oct 2021
This role involved building an on-boarding form using Gatsby 4 and TypeScript for frontend, and Mulesoft and Salesforce for backend. Whilst in this role, I investigated and promoted new and existing observability tools such as Dynatrace & Datadog.
Laminar • Oct 2020 - Mar 2021
This role involves developing financial services software for cryptocurrency using the MERN stack and TypeScript. The frontend was built using React, and communicated with the AWS EC2 deployed Node JS service using uWebsockets. The backend used MongoDB and the Web3 JS API.
Kete Kai • Nov 2019 - Oct 2020
This position involved designing and developing a message driven architecture on AWS using SNS, QLDB, DynamoDB, Lambda (TypeScript), SQS, API Gateway, the Serverless Framework and Epsagon (Observability tool). QLDB is used for databasing to provide intrinsic event sourcing behaviour. This role also involved the development of internal tools built in React with TypeScript that communicate with our backend primarily with websockets. In this role, I also take a position of leadership as sprint master in our modified scrum workflow and some systems management. Azure DevOps was leveraged for repositories, artifacts and pipelines.
Shwoop • Jun 2019 - Nov 2019
This role involved developing an iBeacon based alternate reality game using React Native (TypeScript) and a REST API using AWS tools including Lambda, DynamoDB, Cognito and CloudFormation. I utilized Jira (Scrum) and Bitbucket in this role.