"Give me six hours to chop down a tree and I will spend the first four sharpening the axe." - Abraham Lincoln.

Best way to contact me is via Twitter or email.

Sitting near a small pond in Iceland

Recent posts

September 15, 2020

A Better Code Review

"Everyone gets the experience. Some get the lesson." T.S. Eliot Contributing to a project is not an easy task, especially if you're new to the project, new to coding in general, or just not an active contributor. I have been on both sides, the…
August 28, 2019

Levels of Us Vs. Them

I've recently finished reading John C. Maxwell's The 5 Levels of Leadership - an excellent analysis of the levels of leadership, categorized by the manager's influence. Although the author's descriptions and points are mostly spot-on, I've found that…
June 03, 2019

Using Bastion Host to SSH Tunnel to Mongo Replica Set

We have a Mongo Replica set inside a AWS VPC that's inaccessible from the outside world. The common practice for this is to create a Bastion Host which has a leg in the VPC, but also an available leg to the outside world (usually over a non-standard…
May 25, 2019

Limitations of Running AWS Lambda Functions Inside VPC

Lambda technology is often decorated with misleading superlatives, such as "unlimited scale" and "no ops". In our data-pipeline project I found that working with AWS Lambda functions at scale, meaning thousands of concurrent operations a second, and…
March 20, 2019

AWS Kinesis Producer Retry Strategy

Pushing data to AWS Kinesis Data Streams can and does fail, especially if you do not have enough shards or your shards are not evenly balanced. Under-provisioning will usually get you the all-dreaded ProvisionedThroughputExceededException. It's…