Software Engineer, herding code, currently with Pulumi.

Online Profiles

GitHub - LinkedIn - Mastodon - DEV.to - Strava

Work Highlights

Optimising Pulumi secret handling

Improved caching and batching performance of secret encryption and decryption within Pulumi state serialisation. This provided significant reduction in deployment times for projects with many secrets.

Pulumi program testing library for Go

Built a testing library for running Pulumi programs within a Go test suite. This was primarily to help with testing Pulumi providers but was also adopted by other teams as it's an unopinionated way to test Pulumi programs. It builds on the Pulumi automation API, but providing sensible defaults and asserts for a testing context.

Consume Pulumi programs as components

Starting as a proof of concept, I explored the idea of allowing any Pulumi program to be able to be consumed by other Pulumi programs like a component. This was ultimately not merged, but led to renewed investment in the usability of Pulumi components.

GitHub actions

Wrote a number of small, well defined GitHub actions to help with the publishing of Pulumi providers. This includes pulumi/provider-version-action to generate the version number for any build-with support for PR builds, pre-releases and tagged releases, and major version upgrade flows; and pulumi/verify-provider-release to ensure published SDKs & binaries are usable.

Other small but useful utilities are pulumi/glob-action which allows for cross-platform glob-based file operations; and pulumi/git-status-check-action for checking for unexpected file modifications during CI runs.

Validating UK Number Plates

Created the regular expression for a project working with the UK automotive industry. It's received a lot of comments, stars and forks over the years as it continues to be a useful resource for developers.

Writing/Speaking