David Shi

@dcmshi

Full-stack engineer building AI-powered systems

Press Start_

* ABOUT

I build full-stack applications and AI-powered systems. Sometimes they even deploy on the first try.

I enjoy debugging. This says more about me than I'd like.

My work spans the entire stack, frontend interfaces, ML pipelines, APIs, infrastructure. The parts in between too.

When models misbehave or systems fall over (and they do), I'm the person who figures out why.

[ Tech I Work With ]

Languages: Python • JavaScript • SQL

Full Stack: Node.js • REST APIs • Elasticsearch

AI/ML: Model deployment • Feature engineering • ML pipelines

Infrastructure: Docker • Kubernetes • Terraform • AWS • GCP

Data: Spark • Airflow • DBT • Postgres • MongoDB • Redis

Return to Title

* PROJECTS

Selected work from GitHub:

> GO Transit Reliability Router [+]

Reliability-first trip planner for GO Transit buses. Ranks routes by real-world likelihood of working, not just scheduled time. Accounts for no-shows, alerts, and risky transfers.

Python · FastAPI · Next.js · TypeScript · PostgreSQL · GTFS-RT

[Frontend →] [Backend →]

> Olympic Weightlifting Program Generator [+]

AI-powered training program generator for Olympic weightlifting. Ingests coaching literature into a hybrid vector + structured database, then generates personalised mesocycle programs grounded in Prilepin's chart, extracted programming principles, and athlete-specific maxes and goals.

Python · OpenAI · Anthropic · RAG · HTML

[GitHub →]

> System Design MCQ Generator [+]

Converts system design articles into multiple-choice questions using a local LLM. Deterministic pipeline with chunking, dedup, and a FastAPI + single-file web UI.

Python · uv · Ollama · SQLite · FastAPI

[GitHub →]

> Chinese Anki Builder [+]

Generate Anki flashcard decks from Chinese EPUB/PDF books using jieba, CC-CEDICT, and pypinyin.

Python · jieba · genanki · pypinyin · CC-CEDICT

[GitHub →]

> Plate Converter [+]

Barbell plate calculator for both kg and lbs. Enter a target weight, get the exact plates to load. No fuss.

React · TypeScript · Vite · Tailwind CSS

[GitHub →] [Live →]

> Django Sudoku Solver [+]

Sudoku puzzle solver with a playable browser interface. Enter a puzzle, get the solution.

Python · Django

[GitHub →] [Live →]

> Bust-A-Move [+]

Port of an old-school arcade bubble-shooter. Match 3+ same-colored bubbles, clear the board. 12 levels, hex grid, recursive color-matching, dynamic music.

JavaScript · HTML5

[GitHub →] [Live →]
Return to Title

* CONTACT