Developed EDA flow for asynchronous chips, called Loom (see projects). Built a lecture series on asynchronous circuit design (see teaching), and taught this lecture series twice to small groups. Created many circuit modules required for a reconfigurable array chip architecture. Formed business, submitted proposals to NSF Seed Fund, Activate, NASA SBIR, and DIU, and whitepapers for other BAAs and granting opportunities. Created financial and manufacturing models for chip tapeout. Continuous outreach to local hard-tech communities.
Developed a system that routes user requests through on-prem infrastructure in a large scale Content Distribution Network (CDN). Automated deployment of staging and production kubernetes clusters through terraform, helm, and gitlab CI/CD in collaboration with a cross-functional team. Mentored and managed six team members, three were promoted to leadership roles and are now managing small teams while owning and developing major subsystems of the product. Worked directly with Head of ML, CEO, Head of Engineering, and CTO in various contexts to structure pilot programs and translate customer experience and feedback into product and architectural evolutions.
Increased the scalability of the content delivery scheduling system by two orders of magnitude. Designed and implemented the event processing system including real-time evaluation of 20 different KPIs and management of dataflow for analytics. Organized and mediated review of five major system architecture specifications as head of the Architecture Review Board. These systems formed the fundamental backbone of the final product.
Developed the emoji picker in 2018 for chat.google.com including front and back end design. Designed and implemented a complete development environment and circuit library for self-timed circuits in 2016 with automatic test generation and mixed-signal simulation.
Invented a variety of self-timed multipliers, exploiting irregular data patterns for efficient 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.