End to end development of the emoji picker for chat.google.com in 2018 from database schema and server-side handlers to client-side behavior, layout, and animations with both unit and integration tests. Design and implementation of a complete development environment and standard circuit library for self-timed circuits in 2016 with automatic test generation supporting mixed-signal simulation.
Research into self-timed bit-parallel multiplier architectures, taking advantage of irregular data patterns to yield a variety of high throughput solutions.
Design of tests and test coverage for the power controller of the Haswell architecture in 2012 and low level cache of the Ivytown architecture in 2011. Design and implementation of a static analysis tool to automatically generate tests from coverage reports.
Development of scripts and Java plugins to extend support for two computer forensics tools: RouterMarshal and P2PMarshal.
Implemented a variety of displays for scientific experiments in human perception that have since been published. Developed other tools including a program to help assign teaching assistants, a tool for analysis of bacterial cultures, and the website for the lab.