Nathan Anderson, Senior DevOps Engineer

Reliable by design.
Boring on purpose.

I design and run Kubernetes platforms, CI/CD pipelines and infrastructure-as-code for production systems that can't afford downtime. Certified Kubernetes Administrator.

  • FirmwareCKA-certified
  • UptimeSince 2022
  • Nodes7/7 Ready

Certifications

  • Certified Kubernetes Administrator

    The Linux Foundation, 2024, valid to 2027

  • Dell Certified Systems Expert

    Dell Technologies, 2020

Core stack

  • Kubernetes
  • Docker
  • Terraform
  • Ansible
  • Jenkins
  • AWS
  • Azure DevOps
  • Linux
  • Bash
  • Python
  • Git

About

From desktop support to senior DevOps

Nathan Anderson
N. ANDERSON / SENIOR DEVOPS / CKA

I spent seven years in desktop support and hardware engineering before retraining as a developer in 2022, then working up through DevOps roles (junior, associate, and now senior) over the years since. That path means I've genuinely sat on both sides of an incident: the person fixing the machine, and the person whose pipeline broke it.

Most of what I actually enjoy about the job is the second-order stuff. Fixing a flaky pipeline is one thing; making the fix reusable enough that other teams copy it without being asked is the part that actually sticks. A CI/CD pattern built for one project usually ends up as the default for the rest. The monitoring pack built for one Kubernetes service is what every new service gets wired up with now. And a run of test failures that traced back to AWS spot instance evictions turned into pre-stop hooks, then into how the team debugs infrastructure flakiness generally, not just that one incident. Pairing with junior engineers until DevOps work stops feeling like someone else's job comes from the same place.

Day to day that's Kubernetes, Terraform, CI/CD pipelines and infrastructure-as-code for services that need to stay up. Outside work I run a similar kind of platform at home, because the fastest way to actually learn a tool is to be on call for it yourself.

Skills

What I actually use

Platform & orchestration

  • Kubernetes (Certified Administrator)
  • Docker
  • Helm

Infrastructure as code

  • Terraform
  • Ansible
  • Reusable modules & patterns

CI/CD & delivery

  • Jenkins
  • GitHub Actions
  • GitOps (Argo CD)

Cloud

  • AWS (EKS, EC2, RDS, S3, Lambda, CloudWatch)
  • Azure

Monitoring & observability

  • Dynatrace
  • Grafana & Prometheus
  • SLOs & incident response

Databases

  • MySQL
  • PostgreSQL
  • MongoDB

Programming & scripting

  • Python
  • JavaScript
  • Bash

Systems & networking

  • Linux administration
  • Active Directory
  • DNS & networking fundamentals

Leadership & delivery

  • Agile ceremonies & backlog ownership
  • Mentoring & pairing
  • Cross-team standards adoption

Personal projects

What I build when nobody's asking

A self-hosted Kubernetes platform I run at home, on my own hardware, to the same standard I'd hold production to at work.

U8Workloads15+ apps: bookings, alerts, bots, dashboards
U7PlatformGitOps repo, Keel rollout, backup/restore
U6Clusterk3s, 7 nodes, kube-vip HA
U5NetworkingCloudflare Tunnel, self-hosted registry
U4VirtualizationProxmox VE, 4 nodes
U3StorageNFS + iSCSI/ZFS, age-encrypted backups
U2MonitoringNightwatch fleet automation, external heartbeat
U1Power & physicalruns from a spare room, on a UPS

the stack, bottom to top

Platform design, GitOps, storage, backup

A self-hosted Kubernetes platform, run like a production estate

Four Proxmox nodes and a pile of mini PCs, run with the same discipline a paid platform team would bring to a customer-facing cluster.

15+ production workloads, one GitOps repo, zero manual kubectl apply
Infrastructure, CI/CD, incident response

Cutting the cord from GHCR, a self-hosted registry and CI pipeline

Migrated every active project off third-party image hosting, then hunted down and fixed a garbage-collection bug that was silently 404-ing pushed tags.

zero third-party image dependency, one root-caused GC bug fixed for good
Backend design, cost control, on-call alerting

A shared AI gateway with fleet-wide cost control

One internal proxy in front of every LLM call the homelab makes, usage-metered, cost-alerted, and decoupled from any single model name.

single routing point for every internal caller, spend-spill alerts fire within minutes
Full-stack build, DNS/email deliverability, event-driven design

Public services with real users, running from a spare room

A gym's booking system and a licence-plate alert pipeline, both public, both on custom domains, neither one touching a cloud bill.

two live public services, zero open inbound ports, deliverable transactional email
Automation design, alerting philosophy

Automated fleet ops for 13 hosts, quiet unless something's wrong

A nightly job that patches, investigates its own anomalies, and only speaks up when there's actually something to say.

13 hosts patched nightly, alert channel silent on every healthy night

Arcade

The break room

Three games written from scratch in vanilla JavaScript on a single canvas. No engine, no libraries, no build magic: game loops, collision detection, and a 60fps frame budget. Fundamentals practice that happens to be fun.

  • On-Call260 lines
  • Load Balancer220 lines
  • Snake150 lines
Insert coin →
On-Call

Insert coin