I work at the intersection of systems software and distributed computing theory, and most of my work is tied together by the twin themes of nonvolatile memory technologies and parallel programming. On the systems side, I have built run-time libraries for ensuring consistent state on machines with new nonvolatile memory technologies, concurrent and persistent data structures, and novel consensus protocols. On the theory side, I have proven my systems work correct and developed formal tools for reasoning about programs in nonvolatile memory. In general, I build practical systems with formal guarantees, and publish in both systems (e.g., ASPLOS, MICRO) and theory (e.g., DISC) venues.
As of August 2018, I accepted a postdoctoral researcher position at UC San Diego in the Nonvolatile Systems Lab (NVSL) under the mentorship of Prof. Steven Swanson. You can find my academic reference materials here: (CV), (research statement), (teaching statement).