Open to SWE internships & roles
I build full-stack AI products and the production infrastructure behind them.
Computer Science @ University of Illinois Chicago (Software Engineering concentration). Currently a Software Engineering Intern at Mylon.AI and building MedBill Analyzer.
Featured projects
Things I've built and run.
Strongest first - each is a real system I designed, built, and operate end to end.
MedBill Analyzer · Current
Medical Bill Analyzer
Benchmarks every charge against 9,000+ CMS fee-schedule rates - backed by 158 automated tests across a 3-job CI pipeline.
A free, anonymous full-stack web app that checks medical bill charges against CMS Medicare reference rates: OCR extracts CPT/HCPCS codes and dollar amounts, a fee-schedule lookup scores each line as a multiple of the Medicare rate (near, above, or far above reference - or unverified when a code isn't in the CMS tables, so it never asserts an overcharge it can't confirm), and Claude drafts a review letter for the flagged charges.
The React 19 + Vite frontend on Vercel calls serverless functions that proxy to a Python FastAPI backend on Modal behind a fail-closed shared-secret trust boundary. Uploads are validated by magic bytes with decompression-bomb and PDF page-cap guards and processed entirely in memory - nothing is stored, and per-IP rate limiting keys on an HMAC so raw IPs never are either. Every letter is re-verified server-side against the CMS tables, ignoring client-supplied rates, and untrusted text is fenced off from the model to block prompt injection.
GitHub Actions runs 158 tests across 3 parallel jobs on every push and PR - 82 pytest (94% backend coverage, including end-to-end OCR through real Tesseract), 60 Vitest, and 16 Playwright browser E2E tests with an axe-core WCAG 2.1 AA scan of every page at zero violations. The suite is mutation-checked: breaking a status band, the 413 handler, or a label's contrast fails CI. Vercel's Git integration ships a preview build for every PR and deploys each merge to main straight to production.
React · Vite · Python · FastAPI · Modal · PostgreSQL (Neon) · Tesseract OCR · Claude API · pytest · Vitest · Playwright · GitHub Actions
Updated Oct 2026
StockSignal
ML Stock Price Predictor
A 3-layer PyTorch LSTM serving live training progress and 7-day forecasts.
Trains an LSTM forecasting model and serves its predictions through a REST API to a real-time dashboard.
The 3-layer PyTorch LSTM sits behind a FastAPI REST API; a React + Tailwind dashboard streams real-time training progress alongside 7-day price forecasts.
Python · PyTorch · FastAPI · React · Tailwind CSS
Updated Apr 2026
Self-Hosted Homelab
Cloud Infrastructure · 2023–present
13+ services and 20+ users running on bare metal - 99.9%+ uptime, zero open ports.
A self-hosted platform on Proxmox VMs with TrueNAS (ZFS) storage and Dockerized apps, including a GPU-accelerated media server with hardware transcoding serving 20+ users across streaming and photo services.
Remote access is zero-trust - Cloudflare DNS, a hardened VPS reverse proxy, and a Tailscale mesh VPN - so there are zero open ports while holding 99.9%+ uptime over three years.
Proxmox · TrueNAS (ZFS) · Docker · Linux · Cloudflare · Tailscale
Updated Oct 2026
Midea AC
Home Assistant Integration · HACS
Controls Midea air conditioners entirely over the LAN - the cloud is touched once at setup, never at runtime.
A Home Assistant custom integration (distributed through HACS) that controls Midea and Midea-OEM air conditioners locally over the network. It exposes a full climate entity - power, HVAC mode, target temperature, fan speed, and swing - alongside switches, sensors, selects, a number, and a fan entity for the extra features a unit supports: eco / sleep / boost modes, indoor and outdoor temperature, humidity, energy and realtime power, airflow angle, and a fresh-air module.
Built on the midea-local protocol library, it uses the Midea cloud account only once during setup - to discover devices and fetch each unit's local encryption keys - after which control is fully local (local_push, no runtime cloud dependency). Entities are generated dynamically from each unit's own reported capabilities, so only the controls your specific AC actually has ever appear.
Python · Home Assistant · HACS · asyncio · midea-local
1Updated Jul 2026
TetherDisplay
Local USB Display Streaming · iPad + Windows
Turns an iPad into a USB-C second monitor for Windows - a low-latency H.265/HEVC pipeline that's fully local with zero cloud, backed by 93 passing unit tests.
TetherDisplay uses an iPad (10th gen) as a USB-C second monitor for a Windows laptop. Since iPads have no native display input, this is a compressed-video streaming pipeline that runs over the USB cable: Windows captures a virtual display via Windows.Graphics.Capture, encodes it with NVIDIA NVENC for low-latency HEVC, streams it over usbmux (the same protocol macOS uses for device syncing), then decodes and renders on the iPad using VideoToolbox and Metal.
The stack spans two systems: Windows host service in C++ (IddCx virtual display, WGC capture, NVENC encode, clean-room usbmux transport) and a Swift/Xcode iPad app (PeerTalk tunneling, VideoToolbox decode, Metal render). All protocol logic is portable, compiled, and tested in WSL (93 unit tests pass); Win32/WinRT/GPU code is written against citation-backed docs and verified on hardware. Security: TOFU pairing + libsodium AEAD encryption. No Wi-Fi, no LAN, no cloud - only the USB cable.
C++ · Swift · Windows API (IddCx, WinRT, D3D11) · NVIDIA NVENC · VideoToolbox · Metal · libsodium · CMake · Protocol Buffers
Updated Jul 2026
KVDatabase
LSM-Tree Storage Engine · C++17
Serves ~2.9M reads/sec from a from-scratch LSM-tree - the storage-engine design behind RocksDB and LevelDB, with zero dependencies beyond the standard library.
A persistent key-value store built on a Log-Structured Merge tree in pure C++17. Writes hit an fsync'd write-ahead log and a sorted in-memory memtable, then flush to immutable on-disk SSTables; reads check the memtable, then each SSTable newest-to-oldest - a per-table bloom filter skips the ones that can't hold the key (no disk I/O at all, cutting negative-lookup cost ~42x), and a sparse index seeks the rest to within a 16-record scan.
Range scans do a k-way heap merge over the memtable and every SSTable, newest source winning per key with tombstones filtered out; compaction folds all tables into one and drops deleted keys. A rewritten-atomically manifest survives crashes mid-write, and a WAL replay on restart never loses an acknowledged write. CI builds with -Wall -Wextra -Werror and runs the assert-based suite twice - plain, then under AddressSanitizer + UBSan.
C++17 · LSM-tree · Bloom filters · Write-ahead log · Make · GitHub Actions
Updated Aug 2026
Experience
Where I've worked.
Mylon.AI · Now
Jun 2026 – Present · Remote
Software Engineering Intern
Owned 4 of the core data-pipeline features for a multi-tenant RAG platform that answers staff questions from institutional documents with cited sources, on a 3-engineer team that shipped 13 of 14 features to production against live Supabase. Built a 3-format document ingestion pipeline (PDF / DOCX / HTML via LlamaIndex, Voyage AI 1024-dim embeddings) and a 5-table pgvector schema with HNSW cosine search and Row-Level Security enforcing per-tenant isolation. Engineered the FastAPI RAG query API - vector retrieval through a security-scoped SQL function feeding Claude-generated answers with structured citations - backed by 55+ automated tests and hardened against cross-tenant leakage by fixing all 9 findings from an adversarial security review.
Jan 2023 – Jan 2026 · Chicago, IL
Technician Apprentice (under senior technician)
Diagnosed and fixed hardware and software failures across 20+ arcade systems at 8 locations, completing 100+ on-site repairs a year through systematic root-cause debugging. Configured, calibrated, and validated newly installed units.
About
Product, ML, and the infrastructure underneath.

I'm a CS student at UIC (Software Engineering concentration, graduating December 2027) who builds full-stack, AI-powered products and runs the self-hosted infrastructure they live on.
That trifecta is the point: I ship product, train and serve ML models, and operate the production infrastructure underneath - most visibly a homelab I've run for three years. I'm equally at home in a React frontend, a Python backend, and a Linux box wiring up networking.
I learn by building real systems end to end and keeping them running, then reaching for the next problem that forces me to learn something new.
Education
B.S. Computer Science - Software Engineering concentration
University of Illinois Chicago
GPA 3.34 / 4.0 · Expected December 2027
Relevant coursework
Data Structures · Object-Oriented Programming · x86-64 Assembly & Machine Organization · Theory of Computation
Certifications & achievements
- AWS Certified Cloud Practitioner (2023)
- 3rd Place - Capture the Flame 2026 CTF, Beginner Division (3-person UIC team; sponsors: Zebra Technologies, CompTIA, SANS Institute)
Skills
The toolkit.
What I actually build with - grouped, not ranked.
- Languages
- C++ · C · Python · JavaScript · TypeScript · Java · SQL · HTML/CSS
- Frameworks
- React · Vite · FastAPI · Node.js · Tailwind CSS · REST APIs · pytest · Vitest · Playwright
- Cloud & DevOps
- AWS · Vercel · Modal · Docker · Git · GitHub Actions · Linux
- Data & ML
- PostgreSQL · PyTorch · Pandas · NumPy · scikit-learn · Tesseract OCR · Claude API
- Infrastructure & Networking
- Proxmox · TrueNAS (ZFS) · Tailscale · Cloudflare · Nginx Proxy Manager · Pi-hole
Open to SWE internships & roles
Let's build something that stays up.
I'm looking for software engineering internships and roles. Email is the fastest way to reach me - I reply quickly.