QuEST Contributions
C · OpenMP · MPI · CUDA
Contributed to parallel initialization and validation logic in the QuEST
quantum simulation toolkit, collaborating directly with core maintainers
on performance and correctness improvements.
- Worked on MPI, CUDA, and OpenMP initialization paths
- Assisted with validation utilities and performance analysis
- Received direct feedback and acknowledgment from the lead maintainer
Large-Scale Playwright Scraper
Python · Playwright · Pandas · PostgreSQL
Built a headless browser scraping pipeline for a private client to aggregate and analyze structured data
across thousands of dynamic pages, handling auth flows, pagination, and anti-bot countermeasures automatically.
- Scraped and structured 50,000+ records with 99% field-level accuracy validated against source
- Reduced client's manual data entry workload by an estimated 120+ hours
- Automated nightly runs with delta detection to capture only new or changed entries
Client declined open source
Private Doc Brain
Python · Ollama · ChromaDB · BM25
A fully local, privacy-first document Q&A system. Ask natural language questions across PDFs, Word docs,
emails, and text files — LLM inference and vector storage run entirely on-device, no data ever leaves the machine.
- Hybrid retrieval combining BM25 keyword search and semantic vector search via Reciprocal Rank Fusion
- HyDE mode — LLM generates a hypothetical answer first to improve semantic chunk matching
- SHA256-based incremental indexing; only new or modified files are re-embedded on subsequent runs
SQL Analyst Agent
Python · Claude API · SQLite · sqlglot
A multi-agent text-to-SQL system that plans, writes, validates, executes, and explains queries
from a plain-English question. Six specialized agents — schema explorer, planner, writer,
validator, executor, summarizer — take turns with a self-correcting retry loop and real safety
guardrails.
- Six-agent loop hand-written in ~1,900 lines of typed Python — no LangChain, no LangGraph
- Validator-driven self-correction: writer sees the prior SQL + error on retry; planner stays fixed
- Read-only execution under wall-clock timeout + row cap; safety policy enforced via
sqlglot
Paper RAG
Python · Chroma · BGE · Cross-encoder · LLM-as-judge
A production-style RAG system for research papers with hybrid retrieval, a cross-encoder
reranker, citation-grounded generation, and an automated LLM-as-judge eval harness that
actually measures whether the answers are any good.
- BM25 + dense retrieval fused via Reciprocal Rank Fusion, then cross-encoder reranking (MiniLM)
- Citation-grounded prompt with an explicit refusal path when the top retrieval score is below threshold
- Built-in eval harness scoring faithfulness, answer relevance, context precision, and citation accuracy
News Intelligence Pipeline
Python · DuckDB · HDBSCAN · Claude · Streamlit
An end-to-end news intelligence pipeline. Ingests articles from RSS, embeds and clusters them
into topics with HDBSCAN, generates per-cluster summaries and per-article sentiment with
Claude, detects accelerating topics, and surfaces everything on a 4-panel Streamlit dashboard.
- Idempotent stages — ingest dedupes on URL; embedding and sentiment skip already-processed rows
- HDBSCAN clusters headlines into topics; SQL + pandas computes today-vs-trailing-7-day acceleration
- Runs end-to-end on a single DuckDB file with no internet or API key required (sample data shipped)
AI Research Updater
Python · Claude Code · Subagents · Markdown
A weekly AI news digest produced by spawning parallel Claude Code research subagents.
One slash command kicks off the run, and the output lands as a 1–2 page blog-style
"what's now possible" report.
- Fans out 4 parallel research subagents across Reddit, X/Twitter, Anthropic, and other major AI companies
- Synthesizes findings into a structured markdown digest saved per-week under
reports/
- Maintains a
history.md log so each run automatically skips topics already covered
Apartment Scraper Suite
Python · BeautifulSoup · OpenPyXL · Sightmap API
A multi-source residential rental scraper that runs daily across 8+ apartment platforms
(Equity, RentCafe, Bozzuto, Sightmap, RealPage, Spherexx) and writes a deduplicated,
unit-level Excel report.
- Property-specific parsers handle distinct DOM layouts and embedded JSON endpoints per platform
- End-to-end audited against live pages — recovered 50+ rows per day previously lost to layout drift
- Daily delta xlsx output captures per-unit price, size, beds, baths, and availability date
Resume Match Analyzer
Python · FastAPI · Claude API · Pydantic
A web app that scores a resume against a job description and returns structured,
actionable feedback — match score, missing skills, concrete resume edits, and likely
interview questions.
- Structured output via Claude API + Pydantic schemas so responses are always parseable
- PDF resume upload and parsing with
pypdf, plus a plain-text fallback
- Concrete rewrite suggestions ("change X to Y") instead of generic advice like "add more detail"
Darts Scoring App
Python · HTML · CSS · JavaScript
A single-file 301/501 darts scoring app — server, game logic, and UI all live in one
~700-line Python file with zero external dependencies beyond the standard library.
- Browser frontend served from a Python stdlib HTTP server — no frameworks, no build step
- Server-side game state synced to the client via a small REST API
- Persistent player leaderboard saved to JSON, survives server restarts
This Portfolio Website
HTML · CSS · JavaScript
The site you're on. Hand-rolled with no frameworks or build step — just HTML, CSS,
and vanilla JS, hosted on S3.
- Drag-to-swipe project carousel with pointer events, seamless looping, and keyboard control
- Responsive layout, semantic HTML, skip-to-content link, and proper ARIA for the nav toggle
- Typography and palette tuned by hand — no UI kit, no Tailwind, no CSS framework