Work

I like working on AI systems and the infrastructure around them — retrieval, evaluation, data pipelines, and the parts that connect models to real users.

Each entry below opens if you want the detail.

Education

Fifth-Year Master's, Language Technologies Institute

Expected August 2027

Carnegie Mellon University, Pittsburgh, PA

Current coursework Hide coursework

Search Engines (11-642), AI Agents (11-768), Multimodal Machine Learning (11-777), Introduction to Research in Language Technologies (11-705), Directed Research (11-910)

BS in Information Systems and Computer Science

May 2026

Carnegie Mellon University, Pittsburgh, PA

Minor in Logic and Computation

GPA: 3.9/4.0 (Major GPA: 3.9/4.0)

Selected coursework Hide coursework

Machine Learning (10-301), Generative AI (10-423), Natural Language Processing (11-411), Algorithm Design and Analysis (15-451), Distributed Systems (15-440), Introduction to Computer Systems (15-213), Parallel and Sequential Algorithms (15-210), Bug Catching: Automated Program Verification (15-414), Foundations of Software Engineering (17-313), Database Design and Development (67-262), Probability and Statistical Inference I–II (36-235/236), Game Theory (80-305)

Experience

Data Engineer Intern

TikTok

June – August 2026

Data tooling for internal AI agents — finding the right data source from a plain-language question, and diagnosing why livestream revenue moved.

What I worked on Close
  • Designed and, with my mentor, implemented an enterprise data-discovery capability that helps internal AI agents locate usable data sources from natural-language questions, rather than requiring users to already know table names.
  • Packaged it as a self-contained, agent-callable Python service that returns a stable data-source identifier along with the evidence behind each suggestion, and integrated it into the existing company data agents.
  • Worked on a livestreaming operations revenue-diagnosis workflow: detect revenue downside, diagnose which metrics moved abnormally, interpret the business cause, and suggest corrective action. Handled the data extraction, cleaning, metric aggregation, feature engineering, and scheduled pipeline behind it.
  • Both systems were validated with operations and business stakeholders and adopted into their working process.
PythonSQLGraph retrievalQuery rewritingRankingData pipelinesFeature engineeringLLM agents

Research Assistant

Chimps Lab, CMU

May 2024 – Present

Red-teaming and bias-auditing research, including PersonaTeaming — a CMU–Apple paper at UIST 2026.

What I worked on Close
  • PersonaTeaming (CMU–Apple collaboration, UIST 2026), second author: suggested persona as an additional axis for automated red-teaming and worked on the dynamic persona-generation mechanism, which generates a candidate persona per seed prompt and keeps whichever one better fits the attack.
  • Implemented the end-to-end workflow, set up the experiment orchestration, and ran the evaluation across six target models, measuring both attack success and corpus-level diversity. Wrote the technical results section of the paper.
  • Put together the PersonaTeaming Playground interface with persistent database storage and deployed it on AWS; it was used as the platform for an industry practitioner study run by the Apple side.
  • WeAudit: worked on tooling to analyze demographic distributions in AI-generated images for bias audits, parallelized large-scale image generation with batching for reliability, and containerized and deployed the system on AWS EC2.
PythonReactAWSLLM APIsEvaluation pipelinesLLM-as-judgeAdversarial promptingAI safety

Research Assistant — NLP-side lead

Sapling Lab, CMU

May 2026 – Present

How people form and revise beliefs about an AI’s mind over a long conversation.

What I worked on Close
  • NLP-side lead on an NSF-funded interdisciplinary research program studying Mutual Theory of Mind — how the mental-state attributions users form toward socially responsive AI emerge and evolve over sustained interaction.
  • Working on an ongoing first-author simulation study, which grew out of an idea I wanted to pursue, on how user characteristics, assistant social behavior, and conversational situation shape mind attribution across a multi-turn conversation. Manuscript in preparation.
  • Worked out the simulation pipeline and the turn-by-turn measurement approach for tracking attribution trajectories; it is intended both as a paper and as a computational tool supporting the broader research program.
LLM simulationMulti-turn evaluationMeasurement designResearch methodologyPython

Software Engineer Intern

AlpSoft, Singapore

May 2025 – August 2025

Secure enterprise web work for a Singapore government agency.

What I worked on Close
  • Maintained and upgraded secure enterprise sites for EnterpriseSG; shipped UI/UX and backend API improvements.
  • Remediated penetration-test findings by removing exposed URL paths and tightening authorization on user and admin actions.
  • Supported deployment sessions on AWS using Docker and Terraform.
AWSDockerTerraformBackend APIsApplication security

Full Stack Engineer & Team Lead

Enterview (Startup), Pittsburgh, PA

June 2023 – November 2024

An AI mock-interview platform, with a team of four.

What I worked on Close
  • Worked with a team of four on an AI-driven interview-preparation platform with real-time mock interviews.
  • Put together a multi-agent mock interview session and used AI-assisted development to speed up feature delivery.
  • Optimized WebSocket handling for lower latency and smoother feedback.
TypeScriptWebSocketMulti-agent systemsFull stack

Research Intern

Tsinghua University, THUNLP — OpenBMB

May 2023 – August 2023

Organizing heterogeneous REST APIs so a language model can pick the right one to call.

What I worked on Close
  • Prototyped embedding-based organization of heterogeneous REST APIs for the BMTools tool-learning framework, standardizing API documentation into a consistent representation.
  • Clustered tool representations so a language model could select an appropriate category before attempting a call, and wrote unit tests for tool-call format and output readability.
PythonEmbeddingsClusteringTool learningUnit testing

Teaching Assistant

CMU — Great Ideas in Theoretical Computer Science (15-251)

February 2025 – Present

Tutoring proofs and theory, one student at a time.

What I worked on Close
  • Support students through 1:1 tutoring sessions on proofs and theory topics.
  • Design study guides and exam reviews.
AlgorithmsComplexityProof technique

IS Consulting Project

ProtectPT (Non-Profit), Pittsburgh, PA

Spring 2024

A searchable database for a local anti-fracking non-profit.

What I worked on Close
  • Co-designed and delivered a searchable database supporting anti-fracking advocacy.
Database designRequirements

Projects

Dealer's Choice

June 2025 – Present

An online multiplayer poker platform for the variants we play at home games.

Play it: dealer-s-choice.vercel.app ↗

What I worked on Close
  • Custom game variants with real-time multiplayer gameplay.
  • CI/CD pipeline for automated testing and deployment.
  • Deployed on an ECS cluster in private subnets behind a public ALB.
  • Optimized WebSocket connections for low-latency player interaction.
  • The rules for the variants are on my personal page.
TypeScriptNestJSWebSocketAWS ECSDockerCI/CD

Publications & Writing

PersonaTeaming: Persona-Conditioned Automated Red Teaming

UIST 2026 · CMU–Apple collaboration · Second author

Conditioning automated red-teaming on personas, so the attacks reflect the range of people who actually use these systems.

More on this Close

Adds a human-perspective axis to automated red-teaming by conditioning adversarial prompt mutation on personas, including a dynamic method that generates and scores candidate personas rather than relying on a fixed set. I suggested the persona axis, worked on the generation mechanism, implemented the workflow, and ran the evaluation across six target models.

Solver-Guided Fine-Tuning for Accurate and Explainable Poker Decisions

10-423/623 Generative AI, Spring 2026 · with Cassandra Shi & Harry Huang

Fine-tuning an 8B model to explain its poker decisions, not just make them.

More on this Close

A course project fine-tuning Llama 3 8B to jointly produce a poker action and a natural-language explanation, using solver-backed labels from PokerBench as ground truth. Since no human explanations exist for these scenarios, we prompt a larger model as a teacher, score its candidates with a custom rule-based verifier, and validate that verifier against 200 blind human judgments. Supervised fine-tuning closes most of the zero-shot gap (18.0% → 56.2% exact match), and preference optimization (DPO) sharpens explanation quality further at a small cost to action accuracy — an alignment tax we trace back to the action and explanation objectives sharing the same backbone parameters.

Read the paper (PDF)

Mutual Theory of Mind in Multi-Turn Human–AI Conversation

First author · Manuscript in preparation

A simulation of how mind attribution shifts, turn by turn, across a conversation.

More on this Close

A simulation study of how user characteristics, assistant social behavior, and conversational situation shape mind attribution turn by turn. Still ongoing at Sapling Lab.

Skills

Languages
Python · TypeScript · JavaScript · C · Standard ML · SQL · HTML/CSS
Backend & Systems
NestJS · Django · Flask · REST APIs · WebSocket · Distributed systems · Concurrency · Redis
Cloud & Infrastructure
AWS (EC2, ECS) · Docker · Terraform · CI/CD · Cloud security
ML & LLM systems
PyTorch · Hugging Face · LoRA / PEFT · SFT · DPO · RAG · Embeddings · LLM evaluation · Agent tooling
Data
PostgreSQL · MySQL · SQLite · Data pipelines · Feature engineering · Metric aggregation
Quantitative & Formal
Probability & statistical inference · Game theory · Algorithm design · Formal logic · Program verification