At a glance

7 Nomad nodes in production

Self-hosted cluster across mini PCs and Dell PowerEdge servers

72+ TiB under management

Mixed RAIDZ2 pool on TrueNAS, plus a fast NVMe tier

1 HashiCorp Blog publications

Co-authored production observability strategy for Vault at scale

8 Active major projects

Trading systems, multiplayer game, homelab platform, AI tooling

9 Repos self-hosted on Gitea

Migrated off GitHub, building behind my own infrastructure

30+ Trading strategies catalogued

MultiStrat composite scoring engine inside Inspector Gadget

Writing

HashiCorp Vault observability: Monitoring Vault at scale

HashiCorp Blog Aug 2023 Co-author

A production-grade playbook for monitoring HashiCorp Vault: log analysis, telemetry, API and synthetic monitoring, and how to combine them into a coherent strategy. Written for platform teams running Vault as a shared service, with real guidance on baselines, alert thresholds, and the questions a mature Vault deployment should be able to answer.

Recent Projects

CritScalp

Active build

Latency-aware options scalper, written in Go, runs in a TUI

Day-trading bot for 0 to 3 DTE options on the Alpaca platform. EMA crossover entries on 1-minute candles, local Black-Scholes Greeks via Newton-Raphson IV solving, multi-instance coordination through a shared SQLite WAL, hard circuit breakers on daily P&L and consecutive losses, and a bubbletea TUI because staring at terminals is more fun than staring at browser tabs. Slack notifications when the math gets interesting.

Go Alpaca Algo Trader Plus SQLite (WAL) bubbletea FRED API
Updated Apr 2026

Inspector Gadget Strategy

Active build

Composite-signal options system with 30+ pluggable strategies

Where CritScalp scalps, this one swings. A MultiStrat catalogue of 30+ strategies feeds a single composite score from -1.0 to +1.0, gated by EMA crossover confirmation. Decide on candles, execute on ticks. Targets 30 to 45 DTE contracts with delta in the 0.55 to 0.65 zone, sized at 2% account equity per trade.

Go Alpaca Algo Trader Plus Walk-forward analysis CPCV
Updated Apr 2026

ShellGrind

Live

Browser-based multiplayer tank combat, inspired by classic Mac Bolo

Top-down tank warfare in the browser. PixiJS v8 on the client, Go on the server, MessagePack over WebSockets, SAT collision detection. The fun part: I wired in a multi-agent Claude Code review workflow with five distinct reviewer personas critiquing every PR before merge, because if you're shipping multiplayer netcode you might as well make the AI yell at you first.

Go PixiJS v8 WebSockets MessagePack gorilla/websocket
Updated Apr 2026

Pondside Datacenter

Always on

Production-grade infrastructure for an audience of one

A seven-node Nomad cluster running on GEEKOM mini PCs and Dell PowerEdge servers, fronted by Traefik, secured with Vault using JWT workload identity, discovered through Consul, balanced by HAProxy and Keepalived. TrueNAS-backed storage with roughly 72 TiB usable on the spinning rust pool plus a fast NVMe tier. Yes, my home network has SLAs. No, I will not apologize for it.

Nomad Vault Consul Traefik TrueNAS HAProxy Gitea
Updated Apr 2026

Pondside Power Backup

Mid-build

When 'high availability' starts including the power company

5000W inverter/charger paired with 48V LiFePO4 rack batteries to keep the homelab fed when the grid blinks. Class T fusing, 2 AWG runs, BMS data flowing through RS485 into Prometheus and Grafana, because if it isn't graphed, it didn't happen. Solar-ready when the panels arrive.

48V LiFePO4 ECO-WORTHY 5000W inverter Solar Assistant Prometheus Grafana
Updated Apr 2026

claude-task-queue

Shipped

Self-hosted Go task queue for AI coding agents

Replaced a duct-taped Google Sheets workflow with an actual REST API: Chi router, embedded pure-Go SQLite, atomic claim semantics, bearer token auth, vanilla JS frontend, and a one-agent-per-app concurrency model. Deployed through Gitea Actions to my private container registry, then onto Nomad with Vault-managed secrets. Because Claude Code agents deserve better than spreadsheet polling.

Go Chi SQLite (modernc.org) Nomad Vault Gitea Actions
Updated Mar 2026

homelab-mcp

Shipped

A conversational front door to the homelab

Go-based MCP server and chat interface that lets non-technical family members deploy Minecraft modpacks by literally just asking. Discovers modpacks across CurseForge, Modrinth, and FTB; orchestrates Nomad job templates; manages Cloudflare DNS; persists worlds on TrueNAS NFS. Eight gateway services, UUID bearer tokens, zero IT support tickets from the family.

Go MCP Nomad Cloudflare Anthropic API
Updated Mar 2026

Homelab Observability Stack

Active build

One year of metrics, logs, and traces, on my own iron

VictoriaMetrics for long-term metrics on NFS, Prometheus as a short-window scrape buffer doing remote_write, MinIO-backed Loki for logs (object storage beats NFS for log workloads, every time), and Grafana Alloy as the unified collector. Shelly Gen 4 smart plugs feed power telemetry into the same pipeline. One-year retention target. Thanos and Cortex were considered and politely declined.

VictoriaMetrics Prometheus Loki MinIO Grafana Alloy
Updated Apr 2026

Interests

Go as a default

Boring on purpose, fast where it counts, the binary always ships, and the standard library does most of what you actually need. Pick a language for the next decade, not the next thread.

Self-hosted everything

I run my own git, container registry, DNS filtering, identity, observability, and AI inference. Cloud bills make terrible souvenirs. Sovereignty over your tooling compounds in the same way debt does, just in the right direction.

The HashiCorp stack

Nomad, Vault, Consul. Kubernetes is great if you have a Kubernetes-shaped problem. Most people don't, and Nomad gives you 90% of the wins with 10% of the operational tax.

AI infrastructure and agentic systems

Local LLMs on consumer hardware, MCP servers in front of every system I run, and strong opinions about where agentic tooling lands in the next 24 months. Spoiler: most of the value will be in the boring plumbing, not the chat UIs.

Quantitative finance, applied

EMAs, Greeks, walk-forward analysis, deflated Sharpe, Monte Carlo. Less 'get rich quick,' more 'watch the math work and respect when it doesn't.'

Long-game life design

Index-fund discipline, deliberate skill stacking, and a written plan for an EU-based second act. The spreadsheet reconciles, the passport math works, the language lessons started yesterday.

SRE as a worldview

Error budgets, blameless postmortems, and the conviction that most outages are systems telling you the truth about decisions you made six months ago. The discipline transfers to almost everything else worth doing.

Hobbies

Dungeons & Dragons

Player and DM, currently running an Aasimar Cleric and a Bard while occasionally subjecting friends to homebrew encounters from the other side of the screen. Best therapy I've found that doesn't involve a copay.

Live-fire cooking

Pellet smoker, slow cooker, Instant Pot, in roughly that order of patience required. A 14-hour brisket teaches you something a pressure cooker never will, and vice versa.

ATV riding and wrenching

2007 Yamaha Raptor 700, maintained in my own garage. Utah has the kind of trails that make you grateful for both a strong engine and a healthy spine.

Path of Exile

Currently running CI Spark with CoC Comet. The build-complexity-to-reward ratio scratches the same itch as infrastructure design, with fewer pager alerts.

Electronic music

Dark techno, bass house, tech house. The soundtrack to most of the projects above and the reason my home office occasionally doubles as a small club.

Traveling well

Delta Platinum Medallion. Recent trips through Morocco, California redwoods queued up, Spain on the long horizon. The miles are a hobby; the language lessons are an investment.

Two terrible coworkers

An Aussiedoodle and a Maltipoo who report directly to me and respect exactly none of my uptime guarantees.