$ ls -t work/
Work
Newest first. Each ticket is a case study: what I built, what broke, what I would change.
Migrating an AEO Agency Off Squarespace
Rebuilt Penpixel Creative's own site from Squarespace into a custom Astro build on Cloudflare Pages, with a scoped CSP, HSTS and AI-crawler allowlisting.
Astro · Tailwind CSS · Cloudflare Pages · CSP · HSTS preload · Cloudflare TurnstileRead the case study →28 AWS Resources for $22/Month
Auto-scaling, highly available AWS infrastructure in Terraform: ALB, two availability zones, CloudWatch scaling and S3 state with native locking.
Terraform · AWS EC2 · ALB · Auto Scaling · CloudWatch · GitHub ActionsRead the case study →The Jenkins Job That Took 6 Tries
Provisioned Jenkins on EC2 with Terraform and documented all six failed attempts: AMI, Java version, wget, GPG order, nested heredocs and key rotation.
Terraform · AWS EC2 · Jenkins · Amazon Linux 2023 · S3Read the case study →WordPress on a Three-Node Docker Swarm
A three-node Docker Swarm on EC2 running WordPress with three replicas and MySQL on separate overlay networks, deployed from the AWS CLI.
Docker Swarm · AWS EC2 · WordPress · MySQL · Overlay networkingRead the case study →Serverless Text-to-Speech Pipeline
Amazon Polly text-to-speech driven by GitHub Actions: pull requests publish a beta audio file and merges to main publish production audio in S3.
AWS Polly · GitHub Actions · S3 · Python · boto3Read the case study →Docker Swarm Self-Healing Container Infrastructure
A three-node Docker Swarm on EC2 running a global service, so every node runs a container and Swarm replaces any that go missing.
Docker Swarm · AWS EC2 · Overlay networking · UbuntuRead the case study →Linux Security Audit Script
A Bash audit script on a systemd timer that flagged three real issues on my own machine on its first run, all fixed in about ten minutes.
Bash · Linux · systemdRead the case study →Linux Process Sentinel
A Bash watchdog run by systemd that polls a service every 10 seconds, restarts it when it fails and logs every event.
Bash · Linux · systemdRead the case study →