Principal Engineer

January 2023 - April 2023
Melbourne ๐Ÿ‡ฆ๐Ÿ‡บ

Initially when joining Brandcrush, I was brought in to assist with a security uplift. This involved reviewing the existing security posture, identifying areas of concern, and working with the team to address these. This included a review of the existing AWS infrastructure, the application codebase, and the development practices.

On top of the SKU Ingestion project, I was responsible for starting to grow the team (as well as assessing the current team and exiting poor performers), hardening our security footprint, and moving into a CTO (eventually Engineering Manager) role as part of planned transition.

Skills

Akka.NET
C#
Distributed Computing
Docker
DynamoDB
MSSQL

Projects

SKU Ingestion

Built a distributed computing solution capable of processing millions of records quickly at a very low operating cost. This data was used by the Brandcrush website and needed to be returned within 100ms.

The solution was built using Akka.NET as the primary processing model. Whilst Akka.NET supports distributed computing over multiple nodes in a cluster, I opted to use the framework but execute everything within a single node in order to be ready for web scale, but removing some of the initial upfront investment that would have been required.

DynamoDB was the chosen database as its performance, scale, and importantly cost drivers were the best fit for a very high write burst workload (as the data sets were processed overnight), which was also resilient enough to handle networking issues or upstream throttling issues shoudl AWS's infrastructure require time to scale up to meet the demand.


Akka.NET
C#
Distributed Computing
Docker
DynamoDB
MSSQL