THE PERSON BEHIND THE BUILD

From testing systems
to keeping them
running.

I'm Nathaniel, a Site Reliability Engineer with a background in software test automation and a first-class honours degree in Aerospace Technology. I work across AWS, Python and infrastructure as code to make systems more reliable and infrastructure changes repeatable.

My journey
ON THIS PAGE

My route into infrastructure started with a question that testing teaches you to ask: how could this fail?

I studied Aerospace Technology at Coventry University and spent an Erasmus+ placement at Avast in Prague, working on iOS test automation and Python monitoring. From there, my work moved through automation frameworks, microservice monitoring and disaster-recovery tooling into production infrastructure.

Today, I work in a five-person SRE and systems team at CityFibre, supporting AWS, Linux, on-premises and legacy environments. My earlier Senior SDET experience still shapes how I work: testability, clear evidence and automation belong in infrastructure engineering too.

I enjoy tracing a problem across the whole system, making a controlled change, and leaving behind something repeatable. Outside work, WattPilot gives me a place to apply those ideas to solar, storage and home-energy automation.

  1. NOV 2024 – PRESENT / CITYFIBRE

    Site Reliability Engineer

    I engineer and operate Terraform-managed AWS infrastructure, build Python and Bash automation, respond to production incidents and participate in a 24/7 on-call rota. The work spans modern services and legacy systems, with controlled staging-to-production changes.

    • Contributed to 16 Aurora MySQL upgrades, modernised legacy Terraform estates, and moved 25 services to Auto Scaling Groups.
    • Work across networking, IAM, databases, observability and service dependencies to diagnose operational problems.
    • Support Entra ID application authentication, SSO troubleshooting and certificate-related changes alongside AWS-hosted services.
  2. SEP 2023 – NOV 2024 / CITYFIBRE

    Senior Software Developer in Test

    I built a Python Behave and pytest framework for API, GUI, regression, system and end-to-end testing, integrated into Jenkins delivery pipelines.

    • Automated testing across approximately 40 AWS Lambda functions and the critical ordering system.
    • Led automation strategy across five squads and eight QA engineers, with workshops, mentoring and code reviews.
  3. OCT 2021 – SEP 2023 / ACRONIS

    Python Software Developer in Test

    I designed Prometheus-based monitoring for microservice health across 52 global data centres, automated alerting and ticket generation, and built failback disaster-recovery automation using Jenkins, Docker and Kubernetes.

    Python QA tooling and Groovy pipelines connected platform validation, operational diagnostics and repeatable recovery.

  4. JUN 2021 – SEP 2021 / CHORUS INTELLIGENCE

    Junior QA Engineer

    As the sole QA representative on the product team, I led the creation of a TypeScript automation framework using Page Object Models, achieving approximately 80% automated coverage.

  5. JUL 2019 – JUL 2020 / AVAST, PRAGUE

    Junior QA iOS Automation Engineer

    During a competitive Erasmus+ placement, I refactored Swift iOS UI automation tests and worked with Linux systems engineers on Python monitoring applications for Avast Omni.

03 / PRACTICAL SKILLS

Tools I use.
Problems I apply them to.

Professional experience in cloud infrastructure, reliability and test automation, alongside hands-on personal projects.

Cloud & infrastructure as code

AWS infrastructure across compute, networking, identity and managed databases. Repeatable provisioning with Terraform, Packer and Ansible; additional Azure exposure through Entra ID and application authentication.

AWSTerraformPackerAnsibleEntra ID

Automation & delivery

Python and Bash tooling, FastAPI services, test-driven development and CI/CD. Experience with GitHub Actions and self-hosted runners, Jenkins, Bitbucket Pipelines and Git.

PythonBashFastAPIGitHub ActionsJenkins

Linux & containers

Troubleshooting services and connectivity across Linux, Docker and Kubernetes environments, with Kubernetes/EKS and k9s in my toolkit and a k3s cluster running WattPilot at home.

LinuxDockerKubernetes / EKSk3sk9s

Observability & reliability

Monitoring, alerting, incident response and root-cause analysis. I use service health, logs, metrics and dependency checks to separate symptoms from causes and support controlled remediation.

PrometheusGrafanaCloudWatchAlertManagerRCA

Testing & engineering practice

Framework design for API and end-to-end testing, Python standards, maintainable test data, code review and mentoring. My SDET background brings a testability mindset to infrastructure changes.

pytestBehaveTDDAPI testingMentoring

Data & integration

Work with Aurora MySQL, RDS Proxy, Redis and MSK-backed services, plus MySQL and PostgreSQL. Personal projects extend that experience into REST and GraphQL energy-provider integrations.

Aurora / MySQLPostgreSQLRedisKafka / MSKREST / GraphQL

BEng (Hons) Aerospace Technology

First Class Honours · Coventry University · 2017–2021

BTEC Level 3 Extended Diploma in Electronic Engineering

D*D*D* · Suffolk New College · 2016–2017

Training & continuing development

Terraform Associate training, Learning Kubernetes, Google IT Automation with Python, and the 100 Days of Code Python Bootcamp.

A working platform built around everyday use, not a one-off demonstration.

  • Integrated Huawei FusionSolar, Octopus, myenergi and Solcast into a shared operational view.
  • Corrected solar reporting to select the intended plant instead of combining every plant on the account.
  • Added configurable battery schedules and an EV battery guard to respond to changing household charging needs.
  • Worked through container configuration, database access, persistent storage and rollout failures during the move to Kubernetes.
  • Separated the public portfolio from private controls, with validated telemetry and explicit stale-data states.
  • Added regression tests and documented deployment and recovery procedures as the system evolved.

The running system and its engineering decisions are the evidence behind this profile. My next step is to build on that experience in a new engineering role.

WHAT'S NEXT

More to learn.
More to build.

Interested in the way I approach problems?
Take a look at my work and find me on GitHub.

Find me on GitHub