Skip to content
View jpoly1219's full-sized avatar
😎
😎

Block or report jpoly1219

Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
jpoly1219/README.md

Hi there πŸ‘‹

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.

Career

  • πŸ“š 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.

Topics of Interest

  • 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.)

These are a few of my favorite things 🎡

TypeScript OCaml Reason Racket Go Fedora Neovim Vivaldi

Pinned Loading

  1. hazelgrove/diy-hazelnut hazelgrove/diy-hazelnut Public template

    A template for you to implement Hazelnut yourself

    Reason 22 4

  2. context-extractor context-extractor Public

    Extract context of a function hole from a TypeScript program.

    JavaScript 2

  3. educational-technology-collective/srs-authoring educational-technology-collective/srs-authoring Public

    The authoring side of the spaced repetition app.

    TypeScript

  4. educational-technology-collective/srs-chrome-extension educational-technology-collective/srs-chrome-extension Public

    A Chrome extension of the spaced repetition system.

    TypeScript

  5. gambas gambas Public

    Data analysis tool for Go. Similar to the famous Python library pandas.

    Go 83 5

  6. go-leetcode go-leetcode Public

    A clone of Leetcode written in Go and Svelte.

    C++ 3