Research

Broadly, my research interests lie at the intersection of programming languages, distributed systems, and formal verification and testing. More specifically, I am currently pursuing two research directions. First, I am interested in distributed stream processing, both from the foundational point of view (what is a distributed stream processing computation?) and the practical point of view (how to implement an efficient stream processing system?). Second, I am interested in designing effective algorithms for finding notoriously elusive concurrency bugs in distributed systems.