CS + Math senior @ University of Maryland ’27 · prev. Capital One & NASA Goddard
I build backend systems, AI applications, and data pipelines — at Capital One an LLM router directing 50K+ daily queries with 200ms decisions; at NASA Goddard a Python library for the TOLNet API that grew to 1K+ requests a day.
In my free time, I dig into problems that catch my interest and write up what I learn. Read the writeups →
Graduating June 2027 · open to full-time software-engineering roles · San Jose, CA, open to relocating anywhere in the US
Point your AI at this site and it reads my resume and projects directly — no copy-pasting into forms.
Easiest — works in any assistant that browses the web (ChatGPT, Claude, Gemini, Perplexity). Paste this, then add the role:
Evaluate arthur.perng.com as a candidate for this role: <paste a job description>
No setup or sign-in — the assistant fetches my resume and projects and assesses the match.
Or add the MCP server — a native, always-current connection for clients that support it:
https://arthur.perng.com/mcp
Claude: Settings → Connectors → Add custom connector. ChatGPT: developer-mode connectors → add the URL. Cursor / VS Code: one-click install via the MCP deep link.
Exposes live tools (get_resume, list_projects) plus a built-in screen_candidate prompt.
Projects & Research
HomeRescue
A safety-first AI agent that walks a broken home appliance from “it’s broken” to a verified fix.
Python
Google ADK
Gemini
FastAPI
Flutter
Google ADK + Gemini agent with a manufacturer-data MCP server, a rules-based safety escalation engine, and a FastAPI backend on Cloud Run — plus one Flutter client spanning Android, iOS, desktop, and web. Solo capstone for the Google x Kaggle AI Agents Course.
Do prediction-market prices mean what they say? A full-history calibration study of Polymarket.
Python
Jupyter
Pandas
Data Analysis
A resumable crawl/ETL pipeline collected 1.34M resolved markets and ~9.4M price snapshots into an indexed SQLite store queried with DuckDB. It scores whether an outcome priced at probability p actually resolved true about p of the time — with Brier score, log-loss, Wilson intervals, and expected calibration error across seven pre-close horizons.
Market intelligence for an MMO economy with no order book.
TypeScript
Python
FastAPI
React
Vite
SQLite
A dashboard for the Wynncraft MMO’s player-driven trade market: daily price history, a 0–100 liquidity score, and roll-aware price estimation for identified items, built on the crowdsourced WynnVentory API.
Snap a photo of a receipt in Discord; get an itemized breakdown back — and a long-term record of your spending.
Python
discord.py
Gemini
Google Gemini reads the receipt photo, extracts line items and prices (discounts handled automatically), and replies with an expense pie chart — all through one /analyze slash command. Every receipt is also tracked in a SQLite database, so spending can be analyzed over the long term.