Backend C++ developer who genuinely enjoys building things from the ground up — compilers, storage engines, parsers. Focused on system architecture, low-level programming and squeezing out performance. Comfortable living in the terminal on Linux.
A small, statically-typed C-like language with a self-contained reference compiler that lowers source to LLVM IR — lexer, parser, semantic analyzer, AST visualizer and code generator behind a single CLI front-end.
A graph database built on a custom on-disk storage engine, with a Boost.Spirit query language and a REPL front-end. The storage layer works end-to-end and is test-covered; the project is actively evolving.
A raw-socket packet intercept pipeline that listens, rewrites and answers packets at the data-link layer. Its Trauma Tracer mode detects traceroute probes and forges ICMP Time-Exceeded replies — so a traceroute reads back as a story instead of hostnames.
A Fibonacci heap written in pure NASM assembly (with a C build too), plus a Graphviz visualizer, a GoogleTest suite and coverage reporting.
A minimal library for stateful compile-time counting — mutable state evaluated entirely at compile time through template metaprogramming.
An LR(k) parser that can automatically determine the minimal k for which a grammar is LR(k), wrapped in a strict static-analysis and CMake-presets build.
Contributed ~1,300 lines to LaurieWired/GhidraMCP, the bridge that lets LLMs drive Ghidra for reverse engineering — extending the Ghidra plugin (Java) and the MCP bridge (Python) with new features. Not the original author; a feature contribution to an existing project.