Summary

My extensive 14 years of experience in a wide range of positions, teams, businesses and industries has fine-tuned my technical leadership. I have been at small and medium sized companies in all stages of maturity. I keep informed of modern trends across the whole SDLC from individual tools to architectural patterns and business processes. I enjoy applying technology to real world problems and achieving real world outcomes. I am also very comfortable getting hands on and diving deep into whatever technical challenge or tool the situation calls for. My ultimate goal is to deliver software that delights the business and end users alike.

Work Experience

Senior Software Engineer

at Goodcover

June 2021 - August 2024

At Goodcover, my primary focus was on enhancing the React frontend written in Scala.js to expand beyond California to all states, although I frequently worked across the full stack. I contributed to implementing a new quote funnel and member pages, focusing on creating a delightful user experience that drove high conversion rates. This required rewriting components into Slinky functional components, where I created a Scala.js library to increase type safety, reduce errors, and maximize code reuse. I also developed a build plugin that extracted GraphQL definitions from the source code, generating Scala.js and JavaScript bindings. I migrated the entire application to React Router, which improved navigation and user experience. During testing, I discovered and resolved a critical race condition in ZIO Fibers that could deadlock our backend, and upstreamed the fix to the ZIO library to benefit the broader community.

  • Scala
  • Scala.js
  • TypeScript
  • React
  • GraphQL
  • Relay
  • CSS
  • Cypress
  • Percy
  • Slinky
  • Cats
  • ZIO
  • Quill
  • MySQL

Chief Technical Officer

at Flow2b

July 2020 - June 2021

Flow2b is a small Distributed Autonomous Organization that develops and runs an ERP SaaS platform. My role was to correct the technical direction and advance the platform to its next stage, with a primary focus on modernization to facilitate rapid changes while enhancing stability, security, and performance. Key achievements include migrating the entire stack to be managed via Infrastructure as Code using Pulumi, following the AWS Well-Architected Framework; performing a security review and creating a secret management policy; and increasing availability and observability by integrating Datadog for logging, metrics, and alerts. I also retrofitted an effect system, began modularizing the application, and implemented a CI/CD pipeline. Additionally, we started designing and building an app marketplace and fostering a developer community for creating apps on the platform using a custom DSL.

  • Scala
  • Scala.js
  • AWS
  • OrientDB
  • Pulumi
  • Datadog
  • Akka
  • Typescript
  • ZIO

Senior Full Stack Developer

at Geneious, Biologics

May 2020 - Oct 2020

I returned to assist the Geneious Biologics team on a casual contract. It was gratifying to see that the team had continued to embrace and advocate for the systems and standards I had originally established.

  • Scala
  • Play
  • Lagom
  • Slick
  • CQRS
  • Event Sourcing
  • Microservices
  • Serverless
  • AWS
  • Terraform
  • PostgreSQL
  • Spark
  • Kafka
  • Elasticsearch
  • Mesos
  • DC/OS

Senior Engineer

at Lightbend, Observability

Sep 2019 - Apr 2020

I joined Lightbend to work alongside some of my idols in the Scala community. My focus was on version 2 of Lightbend Console, an observability tool for gaining insights into Akka Cluster, Play, and Lagom applications running on Kubernetes. My primary responsibilities included creating new backend microservices using Akka-gRPC and Akka-HTTP, compiling Kubernetes manifests with Jsonnet to enable customers to deploy our stack, and maintaining our CI/CD pipelines and infrastructure. I also developed a wide range of generators and property-based tests to ensure robust and reliable software.

  • Scala
  • Typescript
  • Kubernetes
  • Docker
  • Prometheus
  • Grafana
  • ELK
  • Cassandra
  • Terraform
  • Akka
  • gRPC
  • Observability
  • Microservices
  • Angular
  • GCP
  • OpenShift

Development Team Lead

at Geneious, Prime

Jan 2019 - Sep 2019

I managed and led a team of six to develop Geneious Prime, a molecular biology and sequence analysis desktop application. I worked closely with the project owner to define the roadmap, and then collaborated with the team to plan, scope, and deliver the work. In addition to providing technical leadership, I modernized our development processes, which included migrating the code base from SVN to Git, implementing WIP limits, and identifying bottlenecks to improve efficiency. I also ensured we maintained a buffer of tasks that met the definition of ready, contributing to the successful management of six product releases.

  • Team Leadership
  • Planning
  • Scrumban
  • Jira
  • Java
  • MS SQL Server
  • PostgreSQL
  • MySQL
  • Oracle

Full Stack Developer

at Geneious, Biologics

Jun 2017 - Dec 2018

I initially joined Geneious (FKA Biomatters) as a key member of the cloud team to create a new bioinformatics platform powering Geneious Biologics. My role was to leverage my Scala expertise and knowledge of Reactive Systems to evolve the platform and upskill the team. During this time, I created several new reactive microservices that handled the scheduling and execution of jobs, attaching assay data to millions of reads within a single NGS document. I also helped instill best practices among the team, removed technical debt from the initial MVP, and implemented test contexts for setting up and running integration tests.

  • Scala
  • Play
  • Lagom
  • Slick
  • CQRS
  • Event Sourcing
  • Microservices
  • Serverless
  • AWS
  • Terraform
  • PostgreSQL
  • Spark
  • Kafka
  • Elasticsearch
  • Mesos
  • DC/OS

Software Engineer

at Orion Health, Rhapsody

Jan 2010 - Jun 2017

At Orion Health, I worked on both Rhapsody, an integration engine, and Symphonia, a messaging toolkit. Over the years, I designed and implemented several new features, including error queue management, file handle management, archive cleanup diagnostics, and various configuration APIs. I also designed and led a small team to create a message snapshot filter, resulting in a 4x speedup and 3x reduction in disk usage for applicable use cases. I was primarily responsible for supporting and maintaining Symphonia, which generated over $2 million in recurring support revenue. Additionally, I prototyped the first Rhapsody-as-a-service initiative, leading to the formation of a new team focused on developing a cloud-native application. I taught myself Scala and Akka Streams, and championed reactive design in this project to meet the high throughput and availability requirements.

  • Java
  • C#
  • OSGi
  • Guice
  • JSP
  • YUI
  • Cucumber
  • AWS
  • Scala
  • Akka
  • Integration
  • HL7
  • X12
  • C++/CLI

Education

Bachelor of Science, Computer Science
at the University of Auckland
Bachelor of Commerce, Information Systems
at the University of Auckland

Volunteering

Director & Treasurer
of the Long Bay Residents' Association
Ambassador
for the Wonder Project (Futureintech)