Same regenerated cards as github.com/dunemask, so both profiles say the same thing about AI usage. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> |
||
|---|---|---|
| assets | ||
| README.md | ||
About
I build the platform other developers build on — and I've been doing it since before anyone paid me to.
I self-hosted my first Kubernetes cluster in 2022: private registry, cert-manager, self-hosted Forgejo, Cloudflare DDNS, and a Minecraft-server control plane with its own RBAC and autoscaling. That turned into a job. Today I own the platform for a multi-service SaaS fleet at AppRabbit — AWS managed as code, Kubernetes, 13 Fly.io services, custom domains, identity, observability, and the mobile release pipeline.
I care most about developer velocity: contract-first codegen, ephemeral per-branch environments, local-dev orchestration, and CI that gets out of the way.
Currently finishing a B.S. in Computer Science at BYU (expected May 2027). Open to interesting work.
Elysium
My Kubernetes CI/CD integrated organization lives at forgejo.dunemask.dev/elysium — cluster config, ephemeral environments, and the tooling that runs it.
Skills
| Stack | |
|---|---|
| Languages | TypeScript · JavaScript · Python · Dart · Bash · SQL · Java (earlier work) |
| Backend | NestJS · Node.js · Bun · Express · BullMQ · Socket.IO · MCP · Spring Boot (earlier work) |
| Frontend | React · Flutter · Vite · Material UI · Chakra UI · local-first offline sync |
| Data | Postgres · Redis · Firestore · Prisma · Qdrant · S3 |
| Infra & DevOps | Kubernetes (incl. operators) · Docker · Terraform (governance) · Garden.io · Caddy · nginx · Ansible · AWS · Linux |
| Platforms & Hosting | Fly.io · Cloudflare Workers & Pages · Vercel · Heroku · DigitalOcean · self-hosted Kubernetes |
| CI/CD & Observability | GitHub Actions · Forgejo Actions · OpenTelemetry · Grafana Cloud · fastlane · Jest · Playwright |
| AI Engineering | MCP servers · multi-provider agent runtimes · agent tooling & guardrails |
Things I've built
Multi-tenant AI agent runtime — Anthropic, OpenAI and Gemini behind a single provider interface, with per-provider tool-schema translation, an internal MCP service, and prompt-fragment composition with admin preview. Execution is queue-backed and metered: per-tenant credit accounting, quota enforcement, and billing workers, so agent spend is bounded per tenant instead of unbounded.
Durable workflow engine — a DAG-based run engine with schema-validated triggers, scheduling, and resumable runs. Sweepers recover interrupted executions and fire scheduled work, so a long-running workflow survives a deploy or a dead worker instead of silently disappearing.
Platform-neutral realtime relay — a dedicated WebSocket tier over Socket.IO and Redis Streams that knows only clientId and sessionId, with auth as a pluggable port (JWKS or introspection). Session IDs derive identically on client and server, a grace window lets a same-tab reconnect resume the same session, and delivery is addressed per-device, per-client, all-but-this-device, or with acknowledgement — plus replayable buffered emits for clients that were offline. Ships server and client SDKs; scales horizontally via the Socket.IO Redis adapter.
Ephemeral Kubernetes environments — a Kubernetes operator + CLI + MCP server that provisions a per-branch cluster in ~14 seconds. Admission webhook, leader election, TTL janitor, auto-provisioned k3d, Cloudflare quick-tunnel wiring, and sub-second source sync into the running pod.
Polyglot contract codegen — one schema definition compiles to TypeScript types, runtime validators, Dart/Flutter clients, and Prisma models. Consumers vendor a committed snapshot, so drift shows up as a reviewable diff instead of a runtime surprise.
Multi-tenant custom domains — Cloudflare for SaaS in production: a hostname provisioning/verification state machine, ACME DCV delegation, per-record CNAME/TXT verification with actionable tenant-facing errors, wildcard-zone routing to a Worker.
OAuth 2.0 authorization server — JWKS with kid routing, refresh-token flows, and RFC 8707 resource-indicator audience binding, backing an entitlement-based authorization model.
Mobile build & release platform — multi-tenant iOS/Android delivery: fastlane match with per-team certificate branches, App Store Connect ES256 API keys, Play Console service accounts, AES-encrypted keystores, self-hosted macOS runners.
And before any of it: Minecluster, Minecraft servers on Kubernetes with their own RBAC, HPA, and RCON integration. Built at 20, before any infrastructure job.
On AI
I break AI-assisted development into five types:
| Type | What it means | |
|---|---|---|
| 1 | Contextless Copy & Paste | Copy/paste code into an LLM. |
| 2 | Contextful Assistant Dev | Local agent aiding development. |
| 3 | Contextful Full Dev | Human prompts agent, then reviews & deploys. |
| 4 | Contextful Full Pipeline | Ticket → agent fix → human reviews & deploys. |
| 5 | Blackbox Full Pipeline | Ticket → agent fix → automated deploy. No human. |
From Jan 2024 to Feb 2026 I sat at type one, using AI as an advanced rubber duck that pushes back. Since Feb 2026 I work mainly at type three, with some four and five. Past type three the economics break down: without strict rules, guards, and process, generative volume can cost more than a full dev team — and engineers lose the context behind decisions, which makes emergency debugging brutal.
Attribution. Because AI-derived code can't be directly attributed, I mark which work used coding agents and which didn't. My first agent-assisted commit was 2026-03-17; of 6,106 commits across 31 repos, 2,155 carry an agent co-author trailer and 3,951 do not. Anything here from before 2024 used no LLM or agent at all.
What attribution looks like for the industry long-term is still unknown. But without people posting on Stack Overflow and building in the open, we never could have gotten this far. To them — thank you.
Card generated by generate.mjs from profile.data.json. Commit counts measured from git history across all repos I contribute to.