Each block is an interactive diagram — hover or focus a node for a
one-liner, click to expand the detail. On phones, the same nodes render as
a tap-to-expand list below the title.
01
Multi-Cluster Kubernetes Platform
Many EKS clusters across dev / test / prod, tenant-segmented and mesh-overlaid. App-of-apps GitOps for cluster furniture, OpenTofu for substrate, OIDC-backed kubectl login, and a tested break-glass path for when the orchestrator is down.
EKS
ArgoCD
Istio
OpenTofu
OIDC
Multi-Cluster Kubernetes Platformhover · click for detail
GitOps for the furniture, IaC for the substrate, one mesh across everything. 02
Org-Wide IaC Orchestration Adoption
Multi-quarter roadmap that consolidated a patchwork of CI- and SaaS-driven Terraform onto one managed orchestrator. Stacks-as-code, label-driven OPA policy attachment, per-account assume-role, ASG-backed private worker pools. ~$900K annual savings.
Terraform
OpenTofu
OPA
Spacelift
AWS
Org-Wide IaC Orchestrationhover · click for detail
One orchestrator, one admin repo, segmented workers, account-scoped credentials. 03
Global Edge Routing with Lambda@Edge
A single routing function dispatches thousands of path patterns to service-mesh ingress, a legacy monolith, partner API gateways, and S3 — without exploding CDN config. Maintenance-mode kill switch flippable in minutes. Non-prod gated by viewer-request OIDC.
CloudFront
Lambda@Edge
WAF
Route 53
Cognito
Global Edge Routinghover · click for detail
Hover a node for a one-liner. Click for detail. Mobile: tap a node below. 04
AWS Governance Redesign
Three interlocking workstreams — JIT access, SCP layering, OU restructure — baselined against a live snapshot of Organizations + Identity Center. Standing access reduced to ReadOnly + PowerUser-Minus, JIT for elevation, deny-first SCPs at intent-matched OU boundaries. Build-vs-buy decision documented and shared.
Organizations
Control Tower
IAM Identity Center
Terraform
AWS Governance Redesignhover · click for detail
Three interlocking workstreams. Measured baseline. Documented build-vs-buy decision. 05
Worker Pool Segmentation for IaC Orchestration
Migrated ~750 stacks off a shared public pool onto three private pools — default, source-control tenant, mono-repo tenant — in batches, with imported CloudWatch log history and per-pool session-tag trust scopes. Invisible to consumers.
Spacelift
ASG
CloudWatch
AWS IAM
Worker Pool Segmentationhover · click for detail
Segmented compute. Per-tenant trust boundaries. Migration without disruption. 06
GitHub-as-Code Organization Management
The GitHub org itself — settings, teams, repos, branch protections — managed as Terraform with a PR-driven plan/apply flow. The people-and-permissions layer gets the same review discipline as the cloud infra below it.
Terraform
GitHub
Atlantis
GitHub-as-Code · Org Managementhover · click for detail
Source-control-as-code: people-and-permissions get the same review discipline as cloud infra. 07
This site
The site you are reading. Astro static output, hand-built interactive diagrams, dual-account dev/prod with multi-region S3 + CRR failover, CloudFront with OAC, CFF + Lambda@Edge, Cloudflare grey-cloud DNS, and GitHub Actions deploying via OIDC into per-account least-priv roles — all managed as Terraform through Spacelift. The diagram below renders the pipes that served you this page.
astro
cloudfront
s3
lambda@edge
github-oidc
spacelift
terraform
This Site · Live Architecturehover · click for detail
GitHub → Actions (OIDC) → S3 (use1 ⟶ CRR ⟶ usw2) → CloudFront (CFF + L@E) → Cloudflare DNS (grey-cloud) → you. Infra itself: Terraform via Spacelift.
Side stuff
Personal projects.
Weekend things. Mostly home-network and self-hosted, kept around long
enough that I learned something from each one.
P1
Apartment HQ
College apartment automation on a Raspberry Pi 3B. Pi-hole as the DNS sinkhole for the whole flat, Home Assistant on top for smart-plug and sensor wrangling, mDNS publishing every internal service under *.lan so I never had to remember an IP. Nightly cron-rsync to a USB drive for backup, Wireguard tunnel back from campus when I needed in. Learned the hard way that DNS-layer ad blocking breaks half the apps on a phone in interesting ways — kept a per-client allowlist and a small status page on the Pi to spot when blocking went too far.
raspberry-pi
pi-hole
home-assistant
wireguard
Apartment HQ · Pi + Pi-hole + Home Assistanthover · click for detail
One Raspberry Pi runs DNS, automation, and the VPN for the whole apartment.
P2
Personal mesh
A Tailscale tailnet across the laptop, NAS, the apartment Pi, and my phone, with ACLs scoped per device. Exit node on the home box for travel, subnet router so the older LAN gear (printer, a couple of switches) stays reachable. A private Minecraft server — Paper, in a Docker container on the home box — only reachable over the tailnet, with MagicDNS pointing at the worlds. Friends get in via shared nodes and --accept-routes, no port-forwarding ever. Tailscale SSH instead of managing authorized_keys by hand.
tailscale
wireguard
self-hosted
minecraft
Personal Mesh · Tailscale Tailnethover · click for detail
Identity-scoped overlay. MagicDNS names. Exit node from the road, subnet router into the LAN.
P3
HomeOpsPipeline
Git-driven home automation. Home Assistant config, Pi-hole blocklists, and Caddy routes all live in a private repo. Pushes trigger a self-hosted GitHub Actions runner on a local Pi via webhook, which renders the configs, validates them, restarts the right services, and posts the diff back to the PR. Failed applies auto-rollback to the last known-good commit. Same review discipline I want on cloud infra, pointed at my apartment.
gitops
self-hosted
home-assistant
Home Ops · Git-driven Apartmenthover · click for detail
Everything the Pi runs is in a repo. Push to main, runner renders, services reload.
P4
DotfilesSync
chezmoi-managed dotfiles across the mac, a linux workstation, and a remote dev box. Secrets are injected at apply time via the 1Password CLI — nothing plaintext in the repo, no committed tokens, no .env files trailing around. A small bootstrap script paves a new machine in one command: install chezmoi, point at the repo, sign into 1Password, apply. Templated by hostname so the laptop and the workstation only get what they need.
chezmoi
dotfiles
1password
Dotfiles · chezmoi Synchover · click for detail
One repo, three machines. chezmoi renders per-machine; 1Password supplies secrets at apply time.
Heads up: this site was vibe-coded. I’m an infra engineer, not a frontend dev — but I make things work.