// selected work

Systems I've built

A focused set of full systems, not snippets. Labelled honestly: what's live, what's still in development, and what's team work.

Watt The Hack

  • Lead Engineer · MLAI
  • Team

A Kaggle-style competition platform that securely runs and scores untrusted competitor code at scale. I led the engineering.

  • Kubernetes-native eval pipeline (FastAPI → RabbitMQ → Kaniko → isolated GKE jobs) with NetworkPolicy egress lockdown for running untrusted code safely.
  • An AEMO-calibrated energy-market simulation engine (battery wear, FCAS, carbon pricing, noisy forecasts), published to PyPI with CI auto-release.
  • Adversarial scenario design (false-data injection, an LLM-vs-regex compliance trap) with a state-leakage contract test that hides ground truth from competitors.
  • Python
  • FastAPI
  • Kubernetes · GKE
  • Docker · Kaniko
  • RabbitMQ
  • PostgreSQL

Locked In

  • Shipped
  • Live

A focus tool that blocks distractions based on what you're actually trying to do, not a fixed blocklist. Shipped to the Chrome Web Store.

  • A full three-tier system: an MV3 extension + a serverless GCP backend (Hono on Firebase Functions) + a React dashboard, coordinated through Firebase Auth.
  • Goal-aware blocking: a quadratics video passes while a gaming video is blocked, served by Gemini 2.5 Flash with Zod-validated input and output.
  • Real cost/latency engineering: a local verdict cache cuts repeat checks from ~300ms to under 10ms.
  • TypeScript
  • React
  • Chrome MV3
  • Firebase Functions
  • Vertex AI · Gemini
  • Hono

Pegasus

  • Personal
  • Private

A personal AI agent I run on my own machine and reach from my phone. The interesting part is the permission layer: it asks before doing anything it can't undo.

  • A policy-as-code permission engine: money and trades hard-forbidden, every outward action approval-gated, fail-closed by default.
  • Reachable from a phone PWA over a private Tailscale network. It can even rebuild and restart itself from your phone.
  • TypeScript
  • Claude Agent SDK
  • Fastify
  • Next.js PWA
  • Tailscale

Omni AR

  • DeepNeuron · Team

An AR assistant that watches a scene, remembers it, and answers questions about it later. Built for everyday recall, and for people living with memory impairment.

  • A hand-rolled vector memory store with normalized cosine similarity, time-windowed recall, and disk persistence.
  • A low-latency streaming voice pipeline: Whisper → Gemini intent router → sentence-chunked parallel TTS over SSE, tuned for time-to-first-audio.
  • Python
  • Flask
  • React
  • Gemini Vision
  • Whisper
  • SSE

Relay

  • In development

An offline-first AI messaging engine for small business: scheduled SMS/WhatsApp campaigns and a 24/7 AI auto-responder.

  • A properly multi-tenant backend with per-tenant query scoping, IDOR guards, idempotency keys, and server-side plan gating.
  • 95 tests, with Postgres run in-process (PGlite) so CI needs zero infra, plus an honest SECURITY.md threat model.
  • TypeScript
  • Expo · React Native
  • Hono
  • Drizzle
  • PostgreSQL
  • Twilio

Heritage

  • Shipped

Describe a job in plain English; get a compliant, print-ready Australian tax invoice in one click.

  • Real ATO tax logic as a single source of truth: GST titling, the $1,000 buyer-ID rule, 47% no-ABN withholding, and a genuine ABN checksum.
  • Plain English → strict JSON via OpenAI Structured Outputs, with an offline fallback parser so it still works with no API key.
  • React
  • Vite
  • OpenAI Structured Outputs
  • @react-pdf
  • Vercel

Viterbi

  • Launching soon

An infinite-canvas ink and handwriting app for Android: smooth vector strokes on a canvas that never runs out of room. Launching soon on the Google Play Store.

  • A pressure-aware vector ink engine: strokes are stored as resolution-independent paths, so handwriting stays crisp at any zoom on an effectively infinite canvas.
  • Built natively with Jetpack Compose and a custom Canvas/graphics pipeline, with pan, zoom, and low-latency stroke capture tuned for stylus input.
  • Kotlin
  • Jetpack Compose
  • Android
  • Canvas / Graphics
  • Vector ink

// other builds

  • FrameLift Turn a phone video into a publish-ready still: AI frame selection, HDR-correct colour, and 4× upscaling.
    Python · OpenCV · PyTorch Source
  • AutoSMS An AI-powered daily SMS scheduler for Android, in clean MVVM Kotlin with production-grade rate-limit backoff.
    Kotlin · WorkManager · Room Google Play
  • Recess Put your LinkedIn feed on a curfew: one mindful 30-minute session a week. Messaging, jobs, and search stay open.
    JavaScript · Chrome MV3 · Shadow DOM Source coming