Skip to content

Current

I’m breaking into competitive programming, writing long-form essays and explorations on deep-tech on Substack, and streaming development on Discord, Twitch, and YouTube.

I’m currently reading Database Internals by Alex Petrov, Operating Systems: Three Easy Pieces by Andrea and Remzi Arpaci-Dusseau, and Algorithm Design by Jon Kleinberg and Eva Tardos.

Side Projects

systems programming from first principles:

58 projects shown

Memory Debugger

C, Rust

A memory debugger for large C codebases built on deterministic record-and-replay capturing syscalls, signals, and thread scheduling so any execution replays identically and can be stepped backwards with inline assembly, IR, and alias inspection at any point, plus a compiler-pipeline view that follows a variable from source through optimized IR down to assembly to answer where it went. [Talk]

GPU Workload Scheduler

Python

A distributed workload scheduler that places and manages Docker containers across a GPU fleet, handling task queuing, node health, and resource-aware placement.

MaPLe Language Server

Rust

A language server for MaPLe, the parallel extension to Standard ML, providing completions, diagnostics, and go-to-definition over the LSP protocol.

LLM Inference Library

Python, CUDA

A minimal LLM inference library that owns scheduling, metadata planning, and parallelism intentionally omitting forward pass, weight loading, and CUDA graph capture. Favors writing code over configuring hundreds of CLI flags, with the tokenizer, multimodal handling, and admission/retraction heuristics expressed as code.

Proof-Carrying Storage Agent

Python, TLA+, Lean

A cloud storage agent where an LLM turns natural-language requests into safe storage operations over a signed, idempotent HTTP API. Mutations become reviewable revisions that fail closed on state drift and emit hash-chained proof receipts, with the action ledger modeled in TLA+ and Lean. [Code]

OCaml Notebook IDE

OCaml

A browser-based interactive notebook and cloud IDE for OCaml. It comes with Jupyter-style cells and Replit-style instant, zero-setup environments with first-class native OCaml tooling and libraries. Optimized for cold-start latency, it uses lazy compilation, memory snapshots, and copy-on-write sandboxes to make spinning up a fresh environment feel instant.

Distributed Dataflow Framework

OCaml

A Hydro-inspired framework for OCaml where a distributed system is written as one dataflow program. Streaming operators are pinned to explicit locations, with cross-machine communication type-checked at the boundary, compiled into per-node deployables while the runtime owns networking, serialization, and delivery semantics.

Concurrency Model Checker

OCaml

A loom-style permutation tester for multicore OCaml. A controlled scheduler runs a concurrent test under every meaningful thread interleaving, with dynamic partial-order reduction pruning equivalent executions, surfacing data races and memory-ordering bugs that stress testing never hits.

Nintendo 3DS Emulator

C++, WebAssembly

A high-performance Nintendo 3DS emulator that runs both in the browser via WebAssembly and as a native standalone app, targeting constrained computing environments and instant multiplayer support.

Live Streaming Platform

TypeScript, Deno, WebRTC

A live-streaming service for indie creators that folds in Discord-style community spaces with low-latency video broadcast alongside persistent text channels, voice rooms, and per-creator communities.

Video Conferencing Server

Java

A self-hosted video conferencing server aiming for secure, scalable multi-party calls with HD audio and 4K video, screen and content sharing, in-call chat with private messages, reactions and raise-hand, polls, and virtual backgrounds.

Video Game Marketplace

Java, Kotlin, Quarkus, Spring Boot

A cloud-native rebuild of a video game store as reactive microservices, compiled to GraalVM native images for fast cold starts. Catalog, inventory, and invoicing are independently deployable services talking gRPC internally and REST at the edge, with Kafka events for order and stock updates, circuit breakers, OpenAPI contracts, health checks, and distributed tracing.

MMO Game Server

C

An authoritative massively-multiplayer game server in C with a tick-based simulation loop over a custom UDP protocol, spatial partitioning and interest management so each client only receives nearby state, delta-compressed replication, and lag compensation for hundreds of concurrent players.

Text Editor

Rust

A Sublime-class text editor in Rust with rope-backed buffers that stay instant on huge files, multiple cursors and selections, fuzzy goto-anything and a command palette, incremental syntax highlighting, and a plugin API.

Modern Unix Shell

Rust

An interactive shell that treats pipelines as structured data rather than text, with autosuggestions, syntax highlighting, and smart completions working out of the box, plus a themeable prompt and a plugin system for extending commands.

Mailing List Manager

Laravel, Apache, SQLite, PHP

A mailing list manager built with Laravel and backed by SQLite, served behind Apache, handling subscriptions, moderation queues, message archival, and bounce processing over SMTP.

BitTorrent Client

C

A BitTorrent client in C with bencode parsing, tracker announces, and the peer wire protocol over non-blocking sockets, downloading from many peers at once with rarest-first piece selection, SHA-1 verification of every piece, an endgame mode for the final blocks, and tit-for-tat choking to keep upload slots honest.

Distributed Object Storage

Zig

An S3-style distributed object store with erasure-coded objects spread across nodes, a signed HTTP API with multipart uploads, placement and rebalancing as nodes join and fail, and background scrubbing that detects and repairs corrupted shards.

MicroVM Orchestrator

C++

A Firecracker-meets-Kubernetes platform in C++. At its core is a minimal KVM virtual machine monitor booting jailed microVMs in milliseconds with a stripped-down virtio device model, driven by a declarative control plane whose scheduler and reconciliation loops converge actual cluster state onto desired state.

Version Control System

Rust

A Git-compatible version control system rethought along the lines of Jujutsu. The working copy is itself a commit, every repo mutation lands in an undoable operation log, conflicts are first-class objects that can be committed and resolved later, and descendants rebase automatically when history is rewritten.

C Package Manager

Rust

Cargo, but for C. Comes with declarative manifests, semver dependency resolution with lockfiles, a registry protocol, isolated per-package builds with cached artifacts, and one command taking a fresh checkout to a linked binary.

Fast Linker

Rust

A linker with one perverse target: link a multi-gigabyte executable in about a second. Parallel symbol resolution, mmap-driven input handling, concurrent section layout, and careful attention to memory locality, benchmarked continuously against production linkers on real-world binaries.

Monorepo Build System

Java

A build system in the mold of AWS Brazil. Packages declare dependencies against curated, versioned package sets rather than floating versions, builds are hermetic and reproducible, and upgrading a library across thousands of packages becomes a single version-set flip.

Game Engine

Zig

A Doom-style 3D engine in Zig. Just comes with some basic BSP-based level traversal, a column renderer drawing textured walls, floors, and sprite billboards, sector lighting, hitscan combat, and data-driven level loading, enough to run a playable shooter demo.

GPU Ray Tracing Renderer

Rust, Vulkan

A 3D renderer with hardware-accelerated ray tracing. GPU path tracing distributed across machines in real time, denoising over low-sample frames, and a deep library of materials and physical simulations feeding the scene.

Network Fault Simulator

Rust

A deterministic network simulator where failure is a first-class value; packets can be dropped, duplicated, reordered, delayed, corrupted, or partitioned at the type level, and the same protocol code runs unmodified over real UDP, the simulator, or a recorded replay, so a bug at 30% loss with clock skew reproduces on every run.

Executable Packer

Rust

An ELF executable packer that reimplements what the loader does: parsing headers, mapping segments, applying relocations, and resolving symbols against shared libraries to compress binaries and launch them from a self-extracting stub. Paired with an inspector that answers why every byte exists, tracing each instruction back through symbol, relocation, and object file to a source line, with a tiny linker underneath.

LSM-Tree Storage Engine

C++

An LSM-tree storage engine with a mutable memtable, immutable SSTables, a write-ahead log, checksummed blocks, a block cache, bloom filters, and leveled compaction running concurrently with readers. A fault-injection harness kills the process at arbitrary points mid-write and proves recovery from torn writes and corrupted SSTables, with benchmarks covering random reads, sequential writes, and compaction stalls.

SQL Query Engine

C++

A query engine covering parsing, logical and physical planning, and operator pipelines for scan, filter, project, aggregate, and join. Execution is push-based over a custom allocator with atomic work stealing and cache-local scheduling instead of leaning on an async runtime.

Embedded SQL Database

C

An embedded SQL database in C following the classic SQLite architecture. REPL front end compiling statements for a small virtual machine, a pager managing fixed-size pages persisted to a single file, and tables stored as B-trees walked by cursors.

Edge Database

Go

A distributed edge database built for massive multiplayer workloads, prioritizing deterministic execution and horizontal scale, built in the spirit of Turso and TigerBeetle. A replicated state machine with deterministic, single-threaded transaction processing gives reproducible replay, while data sits close to players at the edge for low-latency reads and writes. Hardened by a Jepsen-style harness that kills nodes mid-commit, partitions the network, fills disks, corrupts segments, and jumps clocks.

Multi-threaded In-Memory Store

Rust

A multi-threaded, shared-nothing in-memory data store with a command interface, sharding key ownership across cores to avoid lock contention.

Key-Value Store

C++

An in-memory key-value store implementing the RESP wire protocol, core data structures, and a single-threaded event loop over epoll.

Custom Columnar Format & Dataframe Library

Rust

A columnar data format and a dataframe library built on top of it. Features include dictionary and run-length encodings, zone maps for chunk skipping, vectorized kernels over column batches, and a lazy expression API that optimizes the whole plan before touching data.

Zero-Copy Serialization Format

Rust

A serialization format where the wire layout is the in-memory layout: generated accessors read fields directly out of mapped bytes with no decode step, bounds and alignment validated once up front, and schema evolution handled through explicit field offsets.

Incremental Streaming Engine

Rust

A streaming dataflow engine centered on incremental computation. Operators maintain materialized views by consuming deltas instead of recomputing from scratch, with watermarks tracking event-time progress and checkpointed state giving exactly-once results across failures.

Copy-on-Write Filesystem

C

An MVP of a modern filesystem in the lineage of ZFS and BTRFS. Has copy-on-write B-trees so no block is ever overwritten in place, checksums on every block with self-healing reads, cheap snapshots and writable clones, and transparent compression.

Userspace NVMe Driver

Rust

A userspace NVMe driver that talks to the SSD directly instead of calling read and write. PCIe BAR mapping, submission and completion queues, DMA buffers, and MSI-X interrupts with the LSM-tree storage engine running on top of it and benchmarks against the Linux block layer and SPDK.

Raft Consensus

OCaml

A Raft consensus implementation with injectable interfaces for time, network, and storage. Property-tested, and pushed past the core protocol into snapshots, log compaction, membership changes, and backpressure.

Raft Formal Specification

TLA+, Lean

A dual formal specification of the Raft implementation. One is a TLA+ model whose safety and liveness invariants such as election safety, log matching, and leader completeness are exhaustively checked by TLC, alongside Lean proofs that discharge the same properties as machine-checked theorems.

TCP/IP Stack

Rust

A userspace TCP/IP stack speaking through a TUN device. ARP, IPv4, ICMP, and UDP underneath a full TCP implementation with retransmission timers, fast retransmit and SACK, sliding-window flow control, and congestion control, interop-tested against the Linux stack and then ported into the operating system kernel behind a socket API.

NTP Client

Rust

A Network Time Protocol implementation that synchronizes the system clock over UDP with offset and round-trip delay estimation and clock discipline.

DNS Resolver

Rust

A DNS resolver that performs iterative resolution from the root servers and parses wire-format records to answer hostname lookups.

Multithreaded Web Server

Python

A multithreaded web server with a thread-pool executor, HTTP/1.1 request parsing, and static file serving over persistent connections.

Operating System Kernel

C

A small operating system kernel built from scratch with context switching, paging and virtual memory, user mode across a system-call boundary, a preemptive scheduler, a disk device driver, a file system, and a command-line shell.

RISC-V Hypervisor

Rust

A minimal type-1 RISC-V hypervisor that boots Linux-based guests from bare metal. Features trap-and-emulate, two-stage guest memory virtualization, interrupt injection, virtio disk and network devices, and SMP guests, with live migration as the endgame.

Linux Kernel Module

C

A loadable Linux kernel module that grows from a character device with ioctl and mmap interfaces into a PCI driver written straight from the datasheet. Module has BAR mapping, DMA, MSI-X interrupts, and NAPI polling with sysfs attributes for runtime configuration and correct locking across process and interrupt context.

CPU Emulator

Rust

A CPU emulator implementing an instruction set with a fetch-decode-execute loop, a register file, and a memory bus to run compiled binaries.

Async Runtime

OCaml

A friendly OCaml library for asynchronous concurrency and I/O, designed natively around io_uring: the scheduler, buffer management, and task model are built for completion semantics rather than readiness polling. Lightweight fibers run thread-per-core with CPU affinity, a zero-allocation hot path, lock-free cross-core queues, and a zero-copy response path, benchmarked against nginx and haproxy.

Coroutine Stack Models

Rust

One coroutine API implemented three ways: compiler-lowered heap state machines, segmented stacks, and manually switched stacks. Benchmarked on creation, suspension, resumption, memory footprint, cache behavior, and deep recursion, with the generated machine code inspected side by side to show what async actually compiles to.

Lock-Free Data Structures

Rust

A library of lock-free concurrency primitives: a left-right map giving readers lock-free access while a writer mutates a second copy, hazard-pointer and epoch-based memory reclamation, an eventually consistent concurrent map with explicit publish, and a cross-process shared-memory arena allocator, each verified under a model checker.

Garbage Collector

Java

A garbage collector drawing on G1, Shenandoah, and newer research with a region-based heap, concurrent marking with snapshot-at-the-beginning barriers, concurrent evacuation behind load barriers, and pause times that stay flat as the heap grows.

SIMD JSON Parser

OCaml

A simdjson-inspired JSON parser for OCaml with a two-stage design that first finds structural characters with SIMD sweeps over raw bytes, then builds a lazy tape for on-demand access, targeting gigabytes per second instead of the usual allocate-as-you-parse approach.

Web Browser Engine

Rust

A browser engine written from scratch in Rust, taking a page from raw bytes to pixels: semi-spec-compliant HTML parsing into a live DOM, selector matching and cascade resolution feeding box-model layout, and damage-tracked compositing so scrolls and repaints only touch dirty layers. Scripts run on its own JavaScript VM, where inline caches speed up hot property lookups, a mark-sweep collector manages the heap, and hot functions tier up through a baseline JIT with type specialization and deoptimization.

Tree-Walking Interpreter

C

A tree-walking interpreter for the Monkey programming language, with a lexer, a Pratt parser producing an AST, and an evaluator supporting integers, strings, arrays, hashes, first-class functions, and closures.

Bytecode Compiler & VM

C

A bytecode compiler and stack-based virtual machine for the Monkey programming language. Features a compact instruction set executed with a constant pool, symbol table, and call frames, a JIT tier that profiles hot functions into native code with inline caches and deoptimization, and a self-hosting milestone where the compiler compiles itself and binaries are diffed across bootstrap generations.

Ray Tracer

Rust

A physically-based path tracer built from scratch through the Ray Tracing in One Weekend series: ray-object intersection, a positionable camera with defocus blur, diffuse, metal, and dielectric materials, BVH acceleration, textures and Perlin noise, quads, emissive lights, and volumes, with Monte Carlo integration and importance sampling driving the final renderer.

Hardware Crypto Library

Hardcaml

A cryptographic hardware library written in Hardcaml, describing synthesizable RTL for primitives such as AES, SHA-2/3, and modular arithmetic, with cycle-accurate simulation and testbench-driven verification against reference vectors.

Future Projects: an experimental file-system, a GPU-aware scheduler for serverless platforms, MapReduce from scratch, context-sensitive search-engine for metadata & logs, tiny machine learning compiler, library containing state-of-the-art parallel algorithms for distributed deep learning, and PyTorch-inspired deep learning framework from scratch.

Open Source

contributing to and interested in:

rust core

rust-lang/rust-analyzer

rust compiler front-end for ides

rust-lang/chalk

trait solver and type system for rust

rust async

tokio-rs/tokio

async runtime for rust with i/o, networking, scheduling, and timers

tokio-rs/loom

concurrency permutation testing tool for rust

data/query

apache/arrow

universal columnar format for fast data interchange and in-memory analytics

pola-rs/polars

extremely fast query engine for dataframes, written in rust

apache/datafusion

sql query engine

python

python/cpython

the python programming language

astral-sh/uv

extremely fast python package and project manager, written in rust

astral-sh/ty

extremely fast python type checker and language server, written in rust

languages

roc-lang/roc

fast, friendly, functional language

MPLLang/mpl

the maple compiler: efficient and scalable parallel functional programming

gleam-lang/gleam

friendly language for building type-safe, scalable systems

js ecosystem

oven-sh/bun

fast javascript runtime, bundler, test runner, and package manager

swc-project/swc

rust-based platform for the web

denoland/deno

modern runtime for javascript and typescript

solidjs/solid

declarative, efficient ui library for javascript