John Wood

Software Engineer, Kubernetes Engineer & Systems Engineer

Download CV (PDF)

About Me

I maintain my own server rack at home, providing free website and fileserver hosting for several community groups, including 1244 (Swindon) Squadron Air Training Corps, Wiltshire County Pool and Mazz's Disco. The rack also runs my personal media server and storage, test & development VMs/containers, and a duplicate backup stack. Outside of work I enjoy music (piano and ukulele), taking apart electronics, tinkering with opensource projects, walking, running, cycling, SUP and general outdoor adventures. I also volunteer with two local Air Cadet squadrons, training young people aged 12-20. I actively maintain a Docker image with over 500k pulls on DockerHub.

Experience

Nationwide Building Society

CI/CD Engineer

Apr 2024 – Present

Nationwide is the largest building society in the UK, requiring stable and usable facilities to help maintain members' financial security.

  • Maintain CI/CD pipelines and applications that let developers focus on development and security researchers focus on security
  • Work with AWS, Azure, GitHub, Harness, Jenkins, Artifactory, Snyk, Dynatrace, Ansible, Terraform, Python, Go, bash and PowerShell

RED Technology Ltd

Internet Systems Engineer

Oct 2022 – Apr 2024

Microsoft Gold partner providing e-commerce solution websites with customisation, PCI security, multiple payment gateways and DDoS protection for a number of big brands.

  • Maintained hosting, certificates, domains, DNS, routing & failover, monitoring and internal services for customers
  • Led the move of internal services (DNS, portals, proxies, relays, monitoring) from a monolithic Windows environment to Linux-based Docker images, paving the way to Kubernetes
  • Introduced GitLab source control and CI/CD pipelines for in-house projects
  • Implemented NetBox for hardware and networking diagnosis
  • Built scripts to automate certificate and domain renewal

D2IQ

Senior Customer Support Engineer

Feb 2022 – Oct 2022

D2IQ provides an independent Kubernetes platform service across AWS, GCP, Azure, EKS, AKS and on-prem.

  • Kept customer HA deployments running smoothly, solving OOM crashes, cluster certificate issues, DNS problems and deployment/pod breakdowns
  • Researched KB articles and assisted internal verification of issues and enhancements
  • Contributed to user-facing documentation and internal technical processes
  • Obtained CKA qualification

Openda Ltd

Senior Developer and Technical Support Specialist

Jan 2005 – Feb 2022

Openda develops and supports an in-house CRM/ERP business software solution, QX, written entirely in Progress OpenEdge, marketed to SMEs with the slogan "Simplicity, Clarity, Speed".

  • Worked on API integration, end-customer documentation, bug-fixing and testing, database optimisation and virtualisation
  • Handled server and server-room setup and customer site-wide backup strategies
  • Provided IT support for networking, servers, desktops, Office 365, phone systems and backups
  • Contributed to mobile app development

Plymouth Mobile Software Solutions

Lead Developer / Technical Manager

Jul 2001 – Jun 2004

Specialised in barcode and handheld solutions for ferry services and water taxis.

  • Developed inventory solutions for lot-traceable companies with low-volume products
  • Supported existing mobile units, including liaising with repair centres and flashing custom firmware

Education

Plymouth College of Further Education

HND (partial) — Computing

Jun 2001 – Sept 2001

Data Structures and Algorithms

University of Plymouth

BSc (partial) — Computing

Sept 1999 – Jun 2001

Software Engineering, Mathematical Statistics, Algorithm Theory, Computer Architecture and History, Computer Networks, Group projects

New College, Swindon

A-Level — Computing, Maths, Physics

Sept 1997 – Jun 1999

Highworth Warneford School

GCSE — Computing, English, Maths, Science, Geography, Electronics, Design & Communication, French

Sept 1993 – Jun 1997

Notable Projects

Kubernetes Migration

Led configuration of a test cluster as proof-of-concept and developed a process for converting internal custom-built projects into container images, enabling the company to move and manage infrastructure on a HA Kubernetes cluster — a precursor to moving customer hosting off monolithic Windows environments.

  • CKA
  • Kubernetes
  • Docker
  • source control

Raspberry Pi Android Auto

Installed a Raspberry Pi with touchscreen into a car to run Android Auto for podcasts on long journeys and commutes.

  • Electronics
  • imaging
  • GitHub

Decode MSF Atomic Clock

Decoded the NPL's MSF atomic clock radio signal to get accurate date and time for a DIY alarm clock project, disassembling a digital clock to extract the receiver antenna and using Raspberry Pi GPIO to extrapolate the signal.

  • Python
  • GPIO

Dynamic Threading in Python

Researched Python's threading architecture and wrote code for the alarm clock project that defines dynamic threads, checks whether a thread is running, and launches new threads when one is missing.

  • Python

Magento API Integration

Worked around Magento's API to export products, attributes, prices and stock quantities, and import orders, payments and carrier tracking information for Openda's QX business system, reporting bugs found in Magento's core code.

  • OpenEdge
  • PHP
  • Postman
  • curl
  • JSON

VMware VSAN Private Cloud

Set up three servers running VMware VSAN for a customer's private cloud environment, including load- and failure-testing, datacentre research, redundant network feeds and DNS changes, before migrating production systems from old hardware.

  • VMware ESX
  • VMware VSAN
  • 10Gbit SFP
  • VLAN
  • DNS
  • Linux

Docker image for get_iplayer

Actively maintains an auto-updating Docker image with over 100k pulls that makes get_iplayer easy to run with almost no configuration.

  • bash
  • Dockerfile
  • Linux
  • API

Skills & Knowledge Areas

Containers & Orchestration

  • Kubernetes
  • Docker
  • podman
  • OpenVZ
  • Rook Ceph
  • velero
  • CIFS/NFS
  • HAProxy/keepalived

Cloud Platforms

  • AWS
  • GCP
  • Azure

Operating Systems & Virtualization

  • Linux
  • FreeBSD
  • FreeNAS
  • Windows
  • MSDos
  • VMware ESX/VSAN
  • Proxmox
  • Xen
  • KVM

Networking & Infrastructure

  • AD/GPO
  • VoIP/PBX
  • Netgear & Cisco networking
  • DNS, BIND, PowerDNS
  • Certificates/SSL
  • SPF, DKIM, DMARC
  • I2C, SPI, OBD2, 1-Wire

Monitoring & Automation

  • Prometheus
  • Loki
  • Grafana
  • Zabbix/Nagios
  • Ansible
  • Packer
  • preseed
  • Git/GitLab

Programming & Scripting

  • Progress OpenEdge (v9-12)
  • Python
  • Go
  • HTML/CSS/PHP
  • JavaScript/TypeScript
  • Dart/Flutter
  • bash
  • PowerShell/VBScript
  • Visual Basic 2-6
  • Delphi 4-7

Data & Hardware

  • SQLite, MariaDB, MSSQL
  • Elasticsearch
  • BMC (OpenManage, IPMI, iDRAC, iLO)
  • ESP32, Raspberry Pi
  • Postscript/PCL, ZPL/EPL