Skip to main content

Writing

The Coming Talent Void in Network Engineering
The BLS projects 12% growth in network engineering through 2034 — nearly triple the national average — while a retirement wave, automation, and a widening skills gap converge into a structural workforce crisis.
Fix Immich 2.6 Postgres Upgrade Failure on TrueNAS
Immich 2.6 dropped PG15 binaries from pgvecto, breaking every TrueNAS install on Postgres 15. Recover 17,512+ assets with this pg_dump → pg_restore fix.
Layer 3 vs Layer 4 VPN: What's the Actual Difference?
Layer 3 VPNs (WireGuard) assign a virtual IP and put you on the network. Layer 4 ZTNA (TwinGate) brokers per-resource access with no IP assigned. Real lab breakdown with diagrams.
VPN vs VLAN: The Difference That Actually Matters
VPN vs VLAN explained at the OSI layer level — what each protects, what each can't do, and how to run both in a homelab. With a real 7-VLAN + WireGuard setup.
My Router Already Knew. I Just Wasn't Asking.
ARP can't cross VLANs. I built a FastAPI app that queries OPNsense, Proxmox, and Docker APIs for a complete homelab device inventory — no raw sockets, no root required.
Automating Homelab Documentation with n8n and Claude Code
Homelab docs go stale fast. My n8n pipeline polls OPNsense weekly, diffs state, and triggers Claude Code via SSH to rewrite docs automatically. Five gotchas that cost real time.
The Backup That Ate My Network
My OPNsense VM froze during a 3am vzdump snapshot, severed all VLAN routing, and trapped Proxmox in a circular dependency. Here's how a 30-line bash script replaced a full VM backup — and why that was the right call.
Contact

Open to networking, opportunities, and collaboration. Drop me a message and I'll get back to you.

Message sent — I'll get back to you soon.
OR FIND ME AT

Usually reply within a day or two.