I currently research in the UC Berkeley Network Systems laboratory. My previous and current work deal mainly with distributed systems and its optimization and stability. During the summer I will also be looking at topics in congestion control.

Most of my work is implemented in Python, Javascript, and Go, althought I have additionally used C and Ruby. Service level knowledge include Docker, Kubernetes, and AWS.


The ThrottleBot project aims to minimize the cost to deploy a distributed system by minimizing resource allocation while maintaining or even improving performance. It automatically cuts down on overprovisioned resources and alleviates underprovisioned ones, packing the system into the minimum number of nodes required. Currently under submission @ OSDI.


Operators running a distributed system can enforce properties (i.e. fault tolerance of a distributed database) specifying a set of even driven triggers that perform an action (i.e. move worker if more than 50% of workers on same machine) when activated. When systems become complex, these triggers may have unintended and troublesome effects when used together, most notably nonconvergence or unbounded growth. The triggers project aims to detect these before deployment.