02 / Projects

Primary projects.

A few projects that show the problem I was working on, what I built, and what changed. The smaller builds below fill in more of the systems, perception, security, and product work.

Computer Vision Research

Railway Semantic Segmentation Research

Problem
Railway inspection workflows need reliable pixel-level understanding of track, ballast, and surrounding scene context.
Contribution
Fine-tuned segmentation models on RailSem19-style data, added transfer-learning support in an MMSegmentation fork, and evaluated railway-specific failure modes.
Impact
Turned academic segmentation work into a practical inspection pipeline for detecting track-adjacent issues such as mud pumping indicators.
PythonPyTorchMMSegmentationRailSem19

Model Evaluation Tooling

Inference Checker

Problem
Segmentation models are hard to compare when outputs live as separate masks and aggregate metrics hide visual regressions.
Contribution
Built an interactive Next.js canvas tool with single, side-by-side, diff, overlay, hover inspection, and per-class metric modes.
Impact
Made qualitative model review faster by pairing pixel-level inspection with IoU and accuracy summaries in one workflow.
Next.jsTypeScriptCanvas APITailwind CSS

C++ Library

SEALCrypt

Problem
Microsoft SEAL setup has enough context and parameter wiring to slow down experimentation with encrypted computation.
Contribution
Wrapped encryption-context initialization behind a modern C++17 interface with CMake, tests, and CI.
Impact
Reduced setup overhead for homomorphic encryption experiments while keeping thread-safety and testability visible.
C++17CMakeGoogle TestGitHub Actions

Systems Programming

RustOS: Bare-Metal RISC-V Kernel

Problem
Understanding OS internals requires working directly with boot flow, memory layout, device IO, and toolchain constraints.
Contribution
Implemented a boot path in RISC-V assembly, custom linker scripts, UART output, and a small Rust kernel environment.
Impact
Demonstrates low-level debugging discipline across assembly, Rust, QEMU, and bare-metal constraints.
RustAssemblyRISC-VQEMULinker Scripts

Additional projects

More of the range.

Full GitHub profile

Privacy-First iOS App

Cal

Built a local-first SwiftUI app that reads package labels with on-device Vision OCR and stores nutrition data locally. Kept scanning and macro tracking private while making the app self-buildable from source for personal use.

SwiftSwiftUISwiftDataVisionHealthKit

Robotics Perception

LiDAR 2D Room Mapping

Processed point clouds with PCL and OpenCV, removed floor planes with RANSAC, and generated 2D room maps. Produced a clearer perception output from real sensor data for downstream robotics workflows.

C++PCLOpenCVCMakeLiDAR

Static Analysis

T-REX: Rust WCET Analyzer

Parsed LLVM IR, built call graphs, detected cycles, and visualized timing paths with Python tooling. Explored practical WCET analysis workflows for systems where predictability matters.

PythonLLVMRustNetworkXMatplotlib

AI Learning Tool

Knowledge Mapper

Built a Next.js assessment interface that generates dynamic checks and maps knowledge gaps. Turned study sessions into targeted feedback loops rather than passive review.

Next.jsTypeScriptReactLLMs

Security Education

Reverse Engineering Tutorials

Documented CTF-style reverse engineering walkthroughs using tools such as Ghidra and IDA. Created a structured learning trail for binary analysis, debugging, and defensive security thinking.

C++PythonAssemblyGhidraIDA Pro

Web Utility

Lazy Wordler

Built a small Next.js utility for answer lookup and solver experimentation. Kept a lightweight puzzle helper available as a deployable web app.

Next.jsTypeScriptReactTailwind CSS

Migration Utility

Proton Pass to Chrome Converter

Built a simple Python converter from Proton Pass export shape into Chrome-compatible CSV output. Made a one-off personal migration repeatable and inspectable from source.

PythonJSONCSV