Projects

Side projects, experiments, and systems I've built. Each one taught me something different.

Pause Guardian

A Garmin Connect IQ diagnostic exploring whether a watch can detect when an athlete forgets to resume a paused activity.

Monkey CGarmin Connect IQGPSFitContributor

MARKA

A quiet, personal race log for endurance athletes to collect finishes, track personal bests, and share a public passport.

Next.jsTypeScriptSupabasePostgresTailwind CSS

AI ATC Simulator

A real-time air traffic control simulator with AI-powered aircraft agents, built with TypeScript and WebSockets.

TypeScriptReactNode.jsWebSocketsVite

Prompt Arena

A competitive platform where users pit LLM prompts against each other in head-to-head battles, with ELO ranking and community voting.

PythonFastAPIReactPostgreSQLDocker

Telegram Bill Split Bot

A Telegram bot for splitting group expenses with automatic balance calculation and settlement suggestions.

Pythonpython-telegram-botSQLite

Iceberg Read with Alluxio

A custom Apache Iceberg FileIO that accelerates reads through Alluxio while keeping writes and deletes on Google Cloud Storage.

JavaApache IcebergAlluxioGCSSpark

TokiToki

A turn-based gacha RPG built in Swift around collectible characters, team strategy, and event-driven game mechanics.

SwiftUIKitCore DataECS

Captcha Recognizer

A computer-vision experiment that segments CAPTCHA characters and trains a CNN to recognize letters and digits.

PythonOpenCVTensorFlowKerasJupyter

Backend Performance Study

Microbenchmark suite studying cache locality, false sharing, and lock contention to analyze latency spikes in a storage data plane.

C++perfvalgrind

RoamAssist

A mobile remote and ROS control layer for safely navigating a quadruped robot assistant.

FlutterDartC++ROSUnitree SDK