Software engineer with a decade of work across rail control systems, clinical trial tooling, education products, and custom electronics. Public repositories here are smaller, self-contained projects; most day-to-day work stays private.
Current focus is local-first AI infrastructure—models and memory on the machine, durable context across sessions, and tool wiring between agents and local services—alongside systems-level I/O, scientific software, and game tooling.
BlackHoleResearch
Multiwavelength FITS explorer for black hole astrophysics. Loads public-archive data from Chandra, XMM-Newton, NuSTAR, ROSAT, JWST, WISE, 2MASS, VLA, and DSS; renders with correct WCS and stretches; builds unit-safe multi-band SEDs; bins X-ray event lists; fits OGIP PHA spectra; and computes Lomb–Scargle periodograms and Vaughan+2003 fractional rms variability. Built on astropy and Streamlit, with a documented catalog of common FITS failure modes.
accretion
Playable explore baseline in Rust and Godot 4.7: 6DOF flight, tractor cargo, home-depot loop, and a distant accretion disk on the skyline. Physics (Eddington luminosity, Shakura–Sunyaev disk temperature, Kerr ISCO) lives in a testable Rust core with constants generated from astropy. Companion to BlackHoleResearch.
gipbridge
Userspace USB bridge for wired Xbox-style (GIP) controllers on macOS. Uses libusb, parses GIP input reports, and feeds Dolphin Emulator’s named-pipe controller backend—no kext, DriverKit, SIP changes, or Apple signing. Controller coverage tracks the Linux xpad list.
aoe2de-optimizer
Windows companion for Age of Empires II: Definitive Edition—graphics and scaling options, mod install/export, hotkey profiles, and registry-backed settings. Fork of SenseiDE by HaSH (@gregstein); credit remains with the upstream project.
Work tends to sit at boundaries where documentation is thin and failure modes are concrete: vendor USB protocols, archival FITS conventions, Windows registry and game-file layouts, and local inference stacks that must stay offline. Prefer small, honest scopes—state what a tool does and does not do—primary-source citations in scientific code, and reversible changes where user data or game installs are involved.
Private work includes local MCP servers for vector memory and on-machine inference, open-source intelligence workflow tooling, identity-protection experiments, and additional Rust/Godot prototypes. Those are not linked here.
For project-specific matters, open an issue or pull request on the relevant public repository.