I’m interested in creating computer systems that aid human insight and creativity.
In my experience, a productive system helps its user think and create with ease, while an unproductive one hinders even the simplest tasks. I’m interested in creating better tools for thinking and learning—for tasks as simple as maintaining good habits and as complex as doing original creative work.
I’m currently pursuing a Ph.D. in the Programming Systems Group at UC San Diego, advised by Sorin Lerner. There, I’m exploring building usable programming assistants using Large Language Models and Program Synthesis.
I completed my master’s degree at UC Los Angeles in 2018 advised by Alex Warth and Todd Millstein. My thesis explored using always-on visualizations to help programming students better understand and debug their programs.
I’m also personally inspired by beautiful art and literature, and love to dance (especially salsa, swing, and hip-hop)!
with Saketh Kasibatla
with Saketh Kasibatla, Alex Warth
with Patrick Dubroy, Saketh Kasibatla, Meixian Li, Marko Röder, Alex Warth
a live programming environment featuring always-on visualizations of program execution
a live-programming environment for creating new programming languages
Engineering Consultant @ US Service Animals
(Jan 2023 - Aug 2023)
- researched analytics tools to improve the quality of business intelligence
- designed and implemented a library to process millions of analytics events
- worked with engineering, business, and data teams to create processes that help maintain high quality data
Founding Engineer @ Vesica Technologies Inc.
(Dec 2018 - Dec 2022)
- built a pure functional Model-View-Update UI library in React and Redux
- architected a distributed pipeline to process hundreds of gigabytes of financial data in realtime
- reduced product iteration time from weeks to days using observable notebooks and exploratory data analysis
- led an engineering team by designing libraries, processes and tools to boost productivity
Founding Engineer @ Tilde Inc.
(May 2018 - Oct 2018)
- prototyped an iOS app to introduce programming to children in K-12 schools
Teaching Assistant @ UCLA Department of Computer Science
(Oct 2017 - Mar 2018)
- led a discussion section for CS131 Programming Languages
- developed a project to teach students about asynchronous programming
Researcher @ Y Combinator Research/HARC
(Jun 2016 - Sep 2017)
- led the development of Seymour, a live programming environment that explains program execution traces as the user writes code (gave the talk for this paper at LIVE 2017)
- built a feature in the Ohm Editor to synthesize examples of production rules using parts of user-provided examples (accepted at LIVE 2016)
Software Development Intern @ Bloomberg LP
(Jun 2015 - Sep 2015)
- migrated credit default swap snapshot data from a team-owned database to a centralized database
- collaborated with several internal teams to acquire necessary information
Research Intern @ Communication Design Group
(Mar 2015 - Jun 2016)
- prototyped a block-based language for data visualization
Full Stack Development Intern @ At the Pool/Yeti
(Jan 2014 - Sep 2014)
- a social media platform to connect users to local knowledge
- built internal tools, backend servers, and an android application
Intern @ Qualcomm Inc.
(Jun 2013 - Aug 2013)
- worked on the UIM Team to develop a toolkit that interfaces with SIM cards
- created a library that parses XML and C code, and populates C data structures