Computer Science, University of Michigan / , / , Ann Arbor, MI
I build software, most recently an internal feature-flagging platform at Rivian and Volkswagen Group Technologies.
Before that, ML infrastructure for city-scale 3D reconstruction, a Google Workspace app for the whole campus, and the navigation module of a Mars rover.
Graduating in May 2027 and looking for a full-time software engineering role after it.
Shipped an internal feature-flagging platform end to end, from an empty repository to production.
Built a NestJS service on Postgres with a REST write API, a federated GraphQL subgraph and a React admin UI.
Wrote the evaluation engine and a dependency-free TypeScript SDK covering boolean, tenant-allowlist, attribute and percentage-rollout targeting. Its caching client evaluates locally, avoiding a network hop per check.
Centralized the data model behind one REST writer with thin regional GraphQL proxies, ending per-region divergence and cutting a new region's rollout to a values file.
Built the admin UI as a federated micro-frontend in an Nx monorepo, with per-environment flag state, a targeting-rule editor, scheduled enablement and environment promotion.
U-M CAEN, Multidisciplinary Design Program
Software Engineering Fellow
/ , Ann Arbor, MI
Built a Google Workspace app that reclaims Drive storage, scoped for campus-wide release.
Built and deployed the app full stack with FastAPI, Next.js and Google OAuth, reclaiming storage through duplicate detection and bulk file actions.
Scoped it for campus-wide release to about 100,000 University of Michigan users.
Set up the team's engineering workflow: CI/CD pipelines, review gated by CODEOWNERS, issue tracking, and AWS Amplify and App Runner deployments.
Capoom, Perot Jain TechLab at Mcity
Software Engineering Fellow, ML Infrastructure
/ , Ann Arbor, MI
Machine learning infrastructure for reconstructing city-scale scenes for autonomous vehicle simulation.
Built a constant-memory training mode for 3D Gaussian Splatting, using lazy disk-backed loading and an LRU cache, that cut per-camera memory from about 12MB to about 1KB and scaled training to a 33,000-image city-scale dataset.
Added open-vocabulary 3D segmentation with GroundingDINO and SAM, plus an asset-extraction pipeline for synthetic AV scenes.
Ran about 50 distributed SLURM jobs, chaining multi-day runs past the cluster's wall-time limit.
Yazaki North America
Software Engineering Intern
/ , Canton, MI
Replaced a manual manufacturing-document process with a Python ETL pipeline.
Built the pipeline with pdfplumber and pandas, cutting a manual PDF process from about an hour to under a minute.
Parsed multi-variant manufacturing PDFs into formatted Excel, with redline detection, Japanese and English normalization, and idempotent SQLite ingestion.
Michigan Mars Rover Project Team
Software Engineer, Autonomous Navigation
/ , Ann Arbor, MI
Worked on the rover's ROS 2 autonomy stack, on the long-range navigation side.
Engineered the long-range navigation module of the rover's ROS 2 autonomy stack.
Tracked distant markers with bearing-only estimation and debouncing, holding trajectory under intermittent visibility.
Projects
A short side path off the trail. Things I built on my own time.
Benefits eligibility platformFirst place, Google and Tech for Social Good
Checks residents against 20 Michigan and federal benefit programs from one 60-second profile. Ships a public eligibility endpoint for agencies and a real-time benefit-cliff income simulator. Next.js, React, TypeScript, OpenAI.
Concord
AI trip coordinatorFirst place, MHacks 2025
Turns group email threads into structured itineraries, through AgentMail inboxes and an async FastAPI webhook. Python, FastAPI, Gemini, ChromaDB.
A grade-forecasting app for Michigan EECS students, live on Vercel, with about 85 percent of users arriving through organic search. Local-first sync over localStorage with debounced Postgres writes, and a full test pyramid gated by CI. Next.js, React, Supabase.
Skills
Languages
TypeScript, JavaScript, Python, C and C++, Java, SQL