Incident Management · AI Automation · Platform
An automated pipeline scanned 12,712 postings across eight job platforms, scored them against
my background using a self-hosted language model, and had Claude tailor the application you're
holding. I reviewed it and pressed send. It runs at 8am every morning on a server in a rack in Germany.
I've spent twenty years keeping critical systems alive. These days I build the ones that keep themselves alive.
What I built
Not demos. These run every day, they serve real people, and when they break it's my weekend. That constraint shapes everything below.
AI companion
Conversational assistant with a hybrid brain: a local model handles everyday chat for free, with a hosted model as fallback. Persistent memory, tool use, and a real voice.
Scripted demo + walkthrough coming
The one that found you
Multi-tenant pipeline across eight ATS platforms. Two-stage scoring, LLM-tailored resumes and cover letters, and a human approval gate that it will not cross.
Sandbox coming
Same pattern, new domain
The job engine retargeted at college scholarships. Different sources, different scoring lanes, same spine. Each student's board gets its own skin, because a 16-year-old will not use ugly software.
Family hub
Shared calendar, chore chart, and lists for a household of four, with recurrence rules and an assistant wired into all of it. The thing my family actually opens every day.
Sandbox coming
The platform underneath
The boring part that makes the rest possible. Containers, reverse proxy with automatic certificates, process supervision, a vector store, scheduled work, and a local inference server.
How it fits together
Every app shares the same platform. Add a source at the left, add a surface at the right, and the middle doesn't change. That's the whole design.
Tradeoffs
Anyone can wire an API to a cron job. The interesting part is what you choose not to do.
Scoring twelve thousand postings through a hosted API would cost more than it saves. A local model does the bulk pass for nothing; the paid model only writes the handful of documents a human will actually read. Roughly 99% of inference happens on my own hardware.
Full automation was the easy build. It fills the form, attaches the documents, answers the standard questions, and then stops. No keyword stuffing, no invisible text, no bot submissions. A person reviews every application, because a person's name is on it.
The first version only ran when my desktop was awake, which meant it quietly stopped running. Now it lives on a supervised server with scheduled runs and its own log. Reliability came from changing where it runs, not how it's written.
I ran a fixed-effects analysis on a hypothesis I believed, using federal data. It came back null. I wrote that up instead of burying it. An engineer who only reports confirming results isn't measuring, they're marketing.
Receipts
Everything here comes from production logs, not a pitch deck.
Who's writing this
Twenty years of keeping things running, from US Air Force network operations and cybersecurity through enterprise IT at Unisys and the American Red Cross, to senior major-incident management for a large consumer platform today.
What I actually enjoy is the seam between operations and automation: the place where a recurring human cost becomes a system that handles it, with the judgment left in human hands. That's what incident management taught me, and it's what every project on this page is a version of.
I'm looking for senior work in AI operations, platform, and automation, remote or with relocation support. If any of this looks like your problem, I'd like to hear about it.