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.

Stay Practiced Personal Stats showing real coding results, checked answers, topic results and activity Stay Practiced desktop JavaScript workspace with code, passing tests, feedback and spaced review

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.

TypeScriptWebAssemblyElectronReactPlaywright
Encounter Lab 3D battlefield showing the Player fighter facing the Fire Demon, with HP engine and dice controls

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.

ReactTypeScriptASP.NET CoreGraphQLSignalRSQLite
DispatchLayer forecasting dashboard showing confidence bands and error diagnostics

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.

PythonFastAPIVuePostgreSQLForecasting
Conceptual diagram of SCCE's temporal graph state, alpha-Laplacian fabric, predictive powerwalks, and spectral surfaces

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.

Graph systemsReasoningLocal runtimesCLI
Abstract render of LaplacianOS's graph runtime as a glowing node sphere

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.

RustKernelUEFIGraph runtime
Bao1702 Desktop safety-first codeplug programmer and reverse-engineering workstation

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.

C#WPFBinary protocolsReverse engineering
RiskLab Mission live console showing 3D terrain, UAS orbits, signal zones, and fused track data

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.

TypeScriptThree.jsWebGLReal-time
Election integrity dashboard showing ballots cast over time, candidate standings, and a cryptographic tally verification table with all checks passing

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.

TypeScriptNode.jsPrismazk-SNARKsReact
Onboard Diagnostics Tool dashboard showing live RPM, speed, coolant temp, fuel level, engine load, throttle position, and MAF readings

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.

ReactWeb BluetoothVite

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
Published on npm Apache 2.0 React, Vue, Svelte, Angular, Lit and Solid

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.