Hi, I’m Ryan.
I build the systems other engineers avoid.
20+ years shipping software end-to-end: interactive frontends, distributed backends, data and forecasting systems, developer platforms, and the occasional operating system. I take on the parts of the stack other people postpone, and I ship the architecture, not just the demo.
20+ years · TypeScript · React · C# · Go · Rust · Python · PostgreSQL
Selected work
Eight systems worth reading the code for.
Real, working repositories spanning full-stack application architecture, forecasting and data systems, reverse engineering, and systems research — not a portfolio grid of screenshots.
Flagship product
StayPracticed
I built StayPracticed for experienced developers who want to keep their coding skills sharp. I write the curriculum myself, across 18 subjects: JavaScript, TypeScript, Python, Go, Rust, C, C++, C#, PHP, SQL, React, Angular, Node.js, ASP.NET, frontend, backend, architecture, and middleware and integration. The exercises cover language fundamentals, algorithms, and the work engineers actually do: debugging stale caches, managing asynchronous work, and reasoning through service failures.
Coding exercises run against real tests in the browser or through local toolchains, with progressive hints and explanations for when you get stuck. A personal skill map shows what needs practice. Pro adds offline practice for a bus ride, a flight, or any time away from a connection. JavaScript is always free, and the public Daily Challenge lets you try an exercise without creating an account.

Full-stack systems
Encounter Lab
A server-authoritative combat engine for tabletop-style encounters. The backend owns every state transition — hit points, resistance, dice rolls, command versioning, full event history. The React/Three.js client never computes outcomes; it only sends intent and renders what the server already committed. Every action is replayable from the event log, not just the current state snapshot. Built with ASP.NET Core, GraphQL, and SignalR for real-time state sync.

Data & forecasting
DispatchLayer
Archive-first forecasting and decision-support for grid assets. Physics-informed generation models replace black-box curve fitting. Every forecast ships with P10/P50/P90 uncertainty bands, not a single point estimate. Accuracy is holdout-validated across 5 years of hourly data on 10 demo sites. Built in Python/FastAPI on the backend, Vue on the front end, Postgres underneath.

Systems research
SCCE
A local, non-LLM cognitive engine: graph memory and inspectable reasoning traces instead of a hosted model and vector RAG. It ingests documents and code, reasons over a persistent evidence graph, and plans actions from that graph, not from a prompt. Every answer carries a reasoning trace back to its evidence — no black box to trust blindly. It runs entirely CPU-native, with a local HTTP API, a CLI, and VS Code integration — no cloud inference call, ever. Source-available under a proprietary license, built to replace the LLM/RAG stack, not wrap it.

Operating systems
LaplacianOS
A capability-oriented OS kernel written from scratch in Rust. It boots through a custom UEFI loader with dual-arch support — x86_64 and aarch64 — boot-verified in CI under QEMU on every commit. A native, typed graph runtime drives predictive system control instead of static schedulers and driver stacks. Capabilities, not ambient authority, gate every resource access at the kernel boundary. A GPU-composited desktop runs native ring-3 applications directly on top of the kernel — no POSIX layer underneath.

Reverse engineering
Bao1702
An independently written Windows configuration toolkit for DM-1702-series radios. The binary codeplug format was reverse-engineered entirely from protocol captures — no vendor SDK, no leaked source. Every device write is treated as destructive until proven otherwise, with staged confirmation before anything touches the radio. A safety-first workflow separates read, validate, and write into distinct, reversible steps. Built in C# and WPF as a real desktop application, not a wrapper around someone else's tool.

Real-time visualization
RiskLab Mission
A real-time 3D command surface built entirely on RiskLab's own component packages. Terrain rendering, live track fusion, and signal-zone overlays run together in one composable scene graph. Multi-view drone feeds stream alongside the 3D view for simultaneous situational awareness. Every visual primitive is typed and composable — there's no game engine underneath, just TypeScript, Three.js, and WebGL. The live demo on this site is the actual production build, not a mockup.

Cryptography
Blockchain Voting System
A tamper-evident election platform built on real cryptographic primitives, not a blockchain buzzword bolted onto a CRUD app. Voters prove token possession with a real, compiled Groth16 zk-SNARK circuit — a salted Poseidon commitment, verified end-to-end with no mocking. A nullifier bound to each challenge gives genuine replay protection, not just a checkbox. Election keys are split via Shamir secret sharing, and every administrative action is signed and independently auditable. The same trust model applies to union and club elections as it does to the trust assumptions underlying government voting infrastructure.

Hardware / browser
Onboard Diagnostics Tool
A React app that talks directly to ELM327 Bluetooth OBD2 adapters from inside the browser. Web Bluetooth replaces the native app or dongle software most OBD2 tools require. Live PID charting streams RPM, speed, coolant temp, fuel level, engine load, and more in real time. DTC codes can be read and cleared directly from the same interface. A raw hex command console exposes the underlying protocol for anyone who wants to go lower-level.
More on GitHub
The public lab
RiskLab is the toolbox I wanted on the last five complicated projects.
Four focused TypeScript packages for serious analytical software: inspectable, composable, and useful enough to ship. Every card below opens a live demo running on this site, not a README.
- Calm screens
- Honest data
- No mystery meat
risklab-ui
Composable React components for dashboards, tools, inspectors, panels, forms, and technical workflows.
Live demo → 02risklab-charts
Reusable charting primitives for analytical interfaces, operational views, and data-heavy product surfaces.
Live demo → 03risklab-styler
A typed styling compiler and runtime for consistent visual language across components, charts, and production applications.
Live demo → 04risklab-icons
A small icon set for technical interfaces: clean, readable, and built to sit quietly inside real tools.
Live demo →Hiring for Staff/Principal engineering?
If the workflow is messy, the data is dense, and the easy answers already failed, we should talk.
I’m interested in Staff and Principal engineering work where systems architecture, production judgment, and execution across the whole stack all matter. Find me on LinkedIn or GitHub.