Work experience

Software Engineer
Oct 2020 – Present
Seattle, WA
Scala, Java

Compiler engineer on the Scala Language & Tools team.

Software Engineer
Oct 2016 – Sep 2020
Seattle, WA
OCaml, Rust, Javascript, Hack

Compiler engineer working on improving the scalability of the Hack programming language.

  • Formalized and proved the correctness of Hack's incremental typechecking algorithm.
  • Migrated Hack to use the Language Server Protocol, providing support for all major editors.
  • Developed a linting system for Hack code written in Hack itself, now supporting hundreds of lint rules.
  • Developed a refactoring system suitable for monorepo-scale code migrations. Typical job time: 12hr → 15min.
  • Developed low-latency IDE server. Worst-case startup time: 5min → 10sec.
SWE Intern
May 2016 – Aug 2016
Seattle, WA
HTML, CSS, Javascript, Hack, MySQL
  • Created dependency graph visualization for internal code review tool.
  • Combined configuration changes and source code changes into one workflow.
SDE Intern
May 2015 – Aug 2015
Seattle, WA
Java, XML, DynamoDB
  • Calculated and displayed savings to customers for all digitally pre-ordered items.
  • Detected large-scale pre-order release events in order to scale preemptively.
Instructional Assistant
Sep 2014 – Apr 2016
Ann Arbor, MI
HTML, CSS, Javascript, PHP, Python, Perl, MySQL, Bash
  • Heavily streamlined staff workflow by overhauling automatic-grading web application.
  • Developed automated project deployment system for rapid iteration on project specifications.

Projects See more on Github... (More on Github)

git-branchless Rust, 1.3k ★

High-velocity, monorepo-scale workflow for Git, based off of the Mercurial workflows at companies like Google and Facebook.

Smash Training TypeScript, 14 ★

Spaced-repetition training app for the fighting game Super Smash Bros. Ultimate. Approximately 200 monthly users.