i build systems
from the machine up.

i work on CI infrastructure at WarpBuild. before that, i spent three years at Excloud building a public cloud, from QEMU/KVM and storage to the APIs and tools customers used.

selected work ↓

WarpBuild

member of technical staff

working on the infrastructure behind WarpBuild's CI runners.

Excloud

platform engineer

when i left, aug 20264,000+ accounts380 active VMs140 managed Postgres clusters20+ internal services

i joined for a frontend role and ended up working on Firecracker a couple of days later. i stayed for three years, working on compute, storage, managed Kubernetes, and the APIs and tools customers used.

compute
the Go control plane for QEMU/KVM: VM lifecycle APIs, rescue boot, volume attach and cleanup, subnet operations, bare-metal host setup, and reconciliation after failed transitions.
block storage
a storage engine using SPDK and NVMe-oF, connected to QEMU guests through VFIO-user. a reconciler compares live bdev, lvol and RAID state with the database and recovers from crashes during provisioning.
kubernetes
managed Kubernetes: control-plane and worker bootstrap, OIDC and JWKS, short-lived join credentials, Cilium and CoreDNS, a CSI driver with attach, mount, resize and failover, and a Karpenter cloud provider.
identity / objects
identity and account services: IMDS tokens, Valkey-backed caching, IAM authorization, encrypted secrets. also the S3-compatible object storage API with multipart uploads, presigned URLs and SigV4 checksums.
managed data
managed Postgres and Kafka/Streams, using the compute and DNS services to provision nodes, replicas and brokers. this also covered topics, users and ACLs.
networking
an AF_PACKET ARP/NDP proxy with BPF filtering, VLAN handling, rate limits, GARP and IPv6 DAD, plus authoritative DNS with AXFR, IXFR, TSIG and weighted records.
shared libraries
Go libraries used by every service on the platform: an HTTP framework that generates OpenAPI 3.1 from Go types using reflection, shared error and domain types, and OpenTelemetry middleware.
developer tools
code generation from the OpenAPI 3.1 specs of eight services, producing an SDK, a CLI with 20 command groups, and a Terraform provider with 30 resources and 13 data sources.
console / delivery
the Next.js console for compute, buckets, Streams, secrets, billing and security groups, with an authenticated instance terminal using Xterm and WebSockets. i also worked on ephemeral CI runners using Firecracker on our own hardware, usage-based billing, and the docs site.
live migration
i rebuilt the disk migration tool with resumable sender and receiver sessions, checkpointing, pinned per-session TLS, heartbeats and idempotent thaw recovery.

GoCTypeScriptSwiftPythonKubernetesQEMU/KVMFirecrackerSPDKNVMe-oFVFIO-userCSIKarpenterLinuxPostgreSQLValkeyClickHouseKafkaOpenTelemetryOpenAPI 3.1TerraformNext.jsReactElectronDNSHTTP/2TLS

DBConsole

electron · postgres

a Postgres client for the web and macOS. it streams query results, draws schema graphs, and checks for destructive queries. it also keeps query history and supports encrypted query sync.

CBManager

swift · appkit · sqlite · vision

a native macOS clipboard manager. search your history, paste an item back into the app you're using, or extract text from a copied image. history is stored locally in SQLite.

CBManager: clipboard history on the left and a preview of the selected item on the right.
CBManager · clipboard history and item preview

Rig

react · fastify · websockets

a web UI for running coding agents on my machines from my phone. it shows tool calls as they happen and lets me stop or resume a session.

Tachyon

pwa · offline-first

a manga reader with offline downloads, auto-scroll, source adapters and AniList sync. the tests cover async state changes and race conditions.

more projects, experiments, and unfinished stuff are on GitHub.