Work

Projects and engineering work. Personal projects are labeled as such, and links appear only where there is something public to link to.

PolyglotSRS

Personal project, active use

A spaced-repetition language platform I build solo, front to back, for my own language learning. Answers are graded by a per-language NLP backend rather than by string match: Arabic never fails an answer purely for missing diacritics but still catches a wrong root pattern, Turkish applies Turkish casing rules so a correct answer typed in caps is not marked wrong, Russian knows aspect pairs. Claude-powered tutors coach from the learner's own failure history.

  • FastAPI
  • asyncpg
  • Supabase
  • React
  • TypeScript
  • Claude API
  • FSRS-5

Sole builder, for personal use and language learning, not a product. Live and invite-only: request access and I'll approve it. Grammar paths seeded across every documented language, roughly 4,600 drills, with ~500 backend and ~95 frontend tests in CI.

Citi Coding Workshop

Open source, Apache-2.0, active

An open-source engineering workshop published under Citi's GitHub organization. Participants build a full team-management application on AWS serverless. I am a founding member and one of five named authors, and I contributed the Terraform and AWS serverless deployment tooling used by every participant: multi-region Lambda deployment, environment generation, and the local dev-start scripts.

  • Terraform
  • AWS Lambda
  • S3
  • CloudFront
  • RDS
  • Shell
  • Python
  • React

Still active, and the one piece of my work at Citi that is public.

FAISS + DuckDB hybrid search

Complete

Dense and sparse retrieval fused with Reciprocal Rank Fusion: FAISS for vector similarity, DuckDB for metadata filtering and sparse matching. An open reimplementation of a general retrieval architecture pattern also used at Citi. No proprietary code.

  • Python
  • FAISS
  • DuckDB

Sole builder.

fitness-trax

Working personal tool, v0.1

An MCP server that turns Claude into a recovery-aware training assistant. It fuses Garmin and Withings data into one daily timeline, then applies deterministic guards in code rather than leaving the decision to the model. Recommendations only propose. Writing a workout to the calendar is a separate, explicit tool call.

  • Python
  • FastMCP
  • OAuth2
  • Docker

Sole builder.

Most of this work is internal and cannot be linked. The Coding Workshop above is the exception.

AVP, Applications Development Senior Programmer (ML Engineer), AI organization

January 2025 to present

  • Builds skills-as-a-service offerings: AI capabilities packaged for engineering teams across the bank to download and use, plus skill-generation tooling, with MCP and security integration underneath. Also works on skill-based agents across multiple media, and on text-to-speech tooling including podcasting.
  • Works as an embedded engineer: deployed into other engineering teams to help them adopt and ship AI offerings.
  • Builds agents on Google ADK, Citi's standardized agent framework, including agents that help engineers hold to 12-factor-agent principles.
  • Rescued a stalled RAG experiment so it could begin production steps, rebuilding retrieval on a FAISS vector index and taking it from non-functional to ready for next steps. Owned most of the backend.
  • Helped build an internal LLM evaluation tool using DeepEval, working the bias-evaluation side, with models tested against standardized benchmarks.
  • Delivered adoption recommendations across 7+ AI/ML platforms and ML-architecture guidance to roughly 49 teams, with hands-on implementation support for five. Rated Exemplary, the highest rating, in 2025.
  • Founding member and named author of Citi's open-source Coding Workshop, contributing the Terraform and AWS serverless deployment tooling used by every participant.

Applications Development Programmer, Developer Services

January 2023 to December 2024

  • Led the DORA++ engineering-health platform, expanding tracking from 50 to 94 indicators across 100+ engineering teams: deployment frequency, change-failure rate, and MTTR.
  • Built an AHR-JIRA analytics connector in Python, delivering proof of concept to MVP before enterprise API access existed.
  • Led the Developer Manifesto tracking system measuring CI/CD and code-quality adoption across 100+ teams. Rated Exceeded Expectations and nominated to the E3 Engineering Leadership Program.
  • Self-hosted homelab. A Tailscale mesh with ACLs, MagicDNS, and subnet routing, running local LLM inference and a synced Obsidian knowledge base. Private infrastructure, so there is nothing to link.
  • Early work, 2022. An e-commerce microservices capstone (rpp34-sdc-network) and a reviews and ratings service (burleywood-atelier). Both from the Hack Reactor period.