Skip to content

Projects

Three pieces of work, each written as problem, decision and outcome. The first two are from Idaho Supreme Court IT. The third is from my homelab, where I practice on systems I am allowed to break.

Restoring ten courthouse sites after the CrowdStrike outage

Idaho Supreme Court IT, 7th Judicial District · July 2024

Problem

In July 2024 a faulty CrowdStrike update left Windows machines around the world unable to start. In the 7th Judicial District that meant courthouse computers in ten counties, used by judges, clerks and staff who needed them working.

Decision

As the district’s point of contact, I coordinated the recovery and worked through the affected sites one by one.

Outcome

Nine of the ten county sites were back the same day. The last one was working the next morning.

Packaging a vendor tool that shipped without an installer

Idaho Supreme Court IT, 7th Judicial District

Problem

A vendor tool the courts relied on came without an MSI installer, so every install was a hands-on job on each machine that needed it.

Decision

I built a custom MSI package for it, so it could be deployed the same way as the rest of the managed software.

Outcome

More than 55 minutes saved on every deployment.

Homelab: certificate-based SSH, single sign-on and an approval queue

Personal lab, used for practice · 2026

Problem

Small offices run into the same access problems I have at home: SSH keys that never expire, a separate password for every app, and automation that holds more privilege than it should. A homelab is a safe place to work through them.

Decision

HashiCorp Vault runs as an SSH certificate authority, so logins use short-lived signed certificates instead of permanent keys. Self-hosted apps sit behind Authentik single sign-on. An AI gateway (LiteLLM) prefers local models, and any root-level command an AI agent wants to run waits in a queue until I approve it.

Outcome

Access that expires on its own, one sign-in per person, and a record of who approved each privileged command. It’s practice, not production, but it’s the pattern I’d bring to a small office or a county.

Write-ups describe the work in general terms. Internal addresses, hostnames and configuration are left out on purpose. Websites I have built are on the web work page.