My research interests lie in cultivating better developer tools and DX using concepts from Programming Languages Theory, AI, Software Engineering, and HCI.
Some of these efforts include:
- Creating a Next Edit prediction feature, using AI models to make edit decisions instead of being limited by FIM autocomplete.
- Statically contextualizing LLMs with typed holes and semantic information, improving code completion accuracy and token efficiency.
- Decoupling the LSP client from the editor to efficiently feed relevant context to the LLM.
- Implementing new language server protocols and editor features to facilitate LLM-driven development, even for low-resource languages.
- Writing portable, complex evaluation suites using custom types over primitive types.
- Formally verifying critical operations such as SQL query rewrites.
- Creating AI-based tools for developers.
- π I'm a PhD student at UC Irvine, researching the future of software engineering.
- π I worked as a software engineer intern at Continue, amplifying developers with curated AI tools amidst the fears of AI taking over developers.
- γ½οΈ I graduated from the University of Michigan College of Engineering with a bachelor's degree in Computer Science.
- π I worked as founding engineer at Ace AI, creating the cloud-based infrastructure for the organization and working on core AI services such as PII cleaning, synthetic data generation, and codebase analysis.
- π¨βπ» I worked as a research software engineer and a student research assistant in the Future of Programming Lab at the University of Michigan, creating ChatLSP (the augmented language server protocol for LLM-friendly methods) and researching static contextualization of LLMs and the further developer tooling ecosystem. Read the paper here.
- π¨βπ» I worked as a student research assistant in the Michigan Intelligent Programming Lab at the University of Michigan, formally verifying SQL rewrite rules using the Lean theorem prover.
- π¨βπ» I worked as a full-stack software engineer at the Educational Technology Collective Lab at the University of Michigan School of Information, working on LLM-based educational technology.
- π° I worked as a Managing Online Editor at The Michigan Daily, leading a team of 20 engineers. Previously, I was a software engineer working on internal tools, backend, and infrastructure.
- π«‘ I was a squad leader of the Computer Emergency Response Team as a Sergeant in the Republic of Korea Army, managing servers and carrying out field infrastructure missions.
- Developer tools and environments
- Programming languages
- Language servers
- AI, ML, and LLMs
- Functional Programming
- Backend web development
- Educational technology, and the theory of how we learn
- Setups (ergonomics, hardware, etc.)





