I'm a software engineer at Google. I'm interested in natural language processing, machine learning, and software engineering.

Outside of computer science, I enjoy playing violin and tennis.


Unity ML-Agents Toolkit

Using the Unity game engine as a platform for machine learning research.


Translates English sentences into Bash commands using deep learning.

Large Scale Machine Learning

Parallel machine learning algorithms.

Automatic Bug Finder

Finds bugs by minimizing patches with delta debugging.

Diff Utils

Easily modify unified diff files.

Search Engine

Implemented using a language model and term frequency model.

Sim2Real Training of Autonomous Vehicles

Training a rover to navigate an indoor office environment with a simulator.

Digit Recognition

Digit recognition using k-NN, SVMs, and CNNs.

N-Gram Language Models

Implemented with linear interpolation, add-K smoothing, and Katz backoff.

Hidden Markov Model

Bigram and trigram HMMs with Viterbi decoding.


Small game of Pong written using PyGame.

Improving Natural Language Inference with a Pretrained Parser

Preprint & Master's thesis, University of Washington, 2019

Deric Pang, Lucy H. Lin, Noah A. Smith

Program Synthesis from Natural Language Using Recurrent Neural Networks

Technical report, University of Washington, 2017

Xi Victoria Lin, Chenglong Wang, Deric Pang, Kevin Vu, Luke Zettlemoyer, and Michael D. Ernst

Evaluating and improving fault localization

ICSE 2017

Spencer Pearson, José Campos, René Just, Gordon Fraser, Rui Abreu, Michael D. Ernst, Deric Pang, and Benjamin Keller

Machine Learning

Teaching Assistant

Computer Programming II

Teaching Assistant

Software Design & Implementation

Teaching Assistant

Natural Language Processing

Teaching Assistant

Computer Programming I

Teaching Assistant

dericp [at]