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
May 2020 - Present
Cloud Native Consultancy Cooperative
In May 2020 a few friends & I founded a Cooperative with the goal of providing Cloud Native Consultancy. We wanted to create a supportive & inclusive, engineering-driven company with a focus on long-term stability & a healthy professional social environment.
We had all been independent consultants for a few years by that point & felt that there are things that by being your own entity definitely one loses out on. Specifically, the community aspect of a company environment can definitely mean quiet days.
The Cooperative is growing steadily, starting at 4 founding members we are now up to 12 in 18 months, with a wider community having grown up around us.
Lead DevOps Engineer
August 2020 - Present
Automated infrastructure & Dev support
I’m part of a small & focused team working on rolling out infrastructure & processes to support in-shop technology. My role is to build, design & architect a scalable solution designed to scale to multiple countries in different regulatory environments.
We are responsible for building & designing a fully operational & multi-tenant capable solution. My responsibilities include supporting consumers of our infrastructure, managing key stakeholders & of course actually building out the project.
I work with the following technologies on a regular basis:
- Azure Cloud
October 2019 - April 2020
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 closely with the developers, directly contributing to the services themselves when the need arises. I also worked with the devs to enable them to take more control of their services throught the lifecycle, from development all the way through to production.
I work on the following technologies on a daily basis:
- Azure Cloud
Lead Cloud Native Engineer
July 2017 - October 2019
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 📖