Things I built
Personal work and coursework - mostly things I made because I wanted them to exist, or because I needed to understand how something worked by building it.
AI wrote every single line of this one. My digital book library (PDFs, EPUBs) had quietly eaten my cloud storage and was about to cost real money, so I built my own. The first thing I told the AI to do? Store the files as BLOBs in a SQL database. It would have done it happily. Catching that mistake — and understanding why bytes belong in object storage while the database holds metadata and a pointer — reshaped the entire architecture before it existed. That one call was worth more than the app. The stack I landed on: Cloudflare R2 for files (zero egress, entire library fits in the free tier), Neon serverless Postgres with Prisma for metadata, Next.js and TypeScript on Vercel. The AI could execute all of it in minutes. What it couldn't do was tell me the first architecture was wrong. That part was still mine.
I wanted a tool that could generate real strategic analyses - not summaries, but the structured frameworks that consultants actually use. So I built one. stratLens takes a company and produces SWOT, Porter's Five Forces, BCG Matrix, McKinsey 7S, and eight other frameworks, backed by live data from financial APIs and news sources. Supports three AI providers with a bring-your-own-key model so no one's API keys are stored in plaintext.
Every morning I want to know what's happening in tech, politics, business, military, and a few other corners of the world - without spending an hour on it. Hedwig does that. It pulls from over twenty sources, uses Claude to summarize and curate, attaches source reliability ratings, and emails me a 20-30 minute digest at a time I chose. Automated via GitHub Actions. I've used it every day since I finished it.
A personal journal application I built to learn the full-stack workflow before building anything more ambitious. Authentication, full-text search, responsive design. The point of entry into everything that came after.
A USC class competition that turned into a six-month product development exercise. SwiftER was an AI-assisted ER management platform designed to help clinicians handle lab orders, patient flow, and communication more efficiently. I led a five-person team through user research with healthcare professionals, competitive analysis against existing EHR systems, financial modeling, and a validation partnership with a hospital in Japan. We reached the semi-finals of the Min Family Challenge for Healthcare Innovation.
Three coursework projects for NUS's Machine Learning module covering the end-to-end workflow. Earthquake damage classification from seismic feature data, insurance premium regression with regularization, and customer segmentation using K-Means. The point was less about the models and more about learning to make decisions at every step of the pipeline - what to clean, what to encode, when the accuracy number is lying to you.