With a focus on Infrastructure automation, I also enjoy backend development. From CICD and programmable Infrastructure to microservices and Containerisation.
I live and breathe the cloud and want to help more people transition into today’s cloud-native ecosystem
October 2019 - Present
Automated infrastructure & Dev support
I focus on building out and automating the infrastructure for multiple services across 5 different geographical regions. This ranges from infrastructure automation using Terraform to providing feedback and guidance on technical decisions for the architecture of running systems.
We work as a close team, following GitOps principles & maintaining a complex set of dependent services across multiple environments.
I work on the following technologies on a daily basis:
Lead Cloud Native Engineer
July 2017 - Present
Building Cloud Native Confidence
I’m a lead cloud native engineer. Normally this means managing a team of engineers with a focus on cloud-technologies. I work technically, both writing code and discussing the architectural direction with the client. When I’m not doing that I’m running trainings in Kubernetes & Docker, working on Pre-Sales or carrying out internal projects to improve openness and satisfaction within the company.
Projects I have worked on include
- Building a tool to inspect the Kubernetes cluster and construct enriched data for consumption by other services
- Build out an enterprise-scale CICD and PaaS offering including Jenkins, SonarQube and Open Policy Agent in Google Cloud
- Advise and implement a number of PoC’s for companies interested in exploring Kubernetes and Cloud Native.
May 2015 - May 2016
Data Engineer & Software Engineer (Intern)
May 2015 - September 2015 & May 2016 - September 2016
During my first experience I was heavily involved in migrating a 500k LOC rails project from rails3 to rails4. As a Data Engineer I was involved in building a machine-learning model, as well as architecting the supporting architecture. Additionally I introduced and supported the rollout of Docker within the company. This process involved building and packaging multiple different processes (within Docker), providing support for Docker-specific issues as well as providing training to colleagues as I onboarded them.
Declarative Operating System
I run nixpkgs on my chromebook (within Crostini), as well as on all my servers/linux laptops. It is a declarative approach to defining package-sets and configuration for a system, whether that be a set of interacting applications or a full-blown operating-system.
I am involved in the community, and support a few packages.
Image Management for Kubernetes Clusters
I was involved in the early alpha-stages of this project. Beginning with setting the base setup for a container registry in Rust.
University of Edinburgh
BSc Computer Science
Machine Learning & Programming Language Theory
Outside of academia, I was (and still am) a member of a group of SysAdmins running & maintaining a set of physical servers located on-campus. The project runs a diverse array of different services (GitLab, LDAP, IRC Server, Mail Server as well as any long-running projects that students may want to run in a less regulated and more experimental environment). During University I also worked within the field as an intern, both over summer and part-time during semesters.
A Little More About Me
Alongside my interests in programming languages and software engineering some of my other interests and hobbies include:
- Rock climbing 🧗
- Paragliding 🛩️
- Reading 📖