I am an associate professor in Computer Science at NYU. Previously, I received my PhD from UC Berkeley where I was advised by Scott Shenker and worked in the NetSys Lab. Even earlier, I received a Sc.B. with honors in Math-CS from Brown.

Before starting at NYU, I spent a year as a software developer at Nefeli Networks, a startup focused on solutions for Network Function orchestration. Between Brown and Berkeley I spent a few years working on the Midori kernel at Microsoft.

I work on systems and networking problems. I am particularly interested in approaches to improve system reliability, either by identifying bugs before deployment or by improving fault tolerance. Please see my publications for recent interests.

Working with me

I am interested in working with NYU undergraduates, masters and PhD students. Please look at recent papers to get a sense of the type of work I do: I am generally open to working on a variety of topics.

If you are a NYU undergraduate or masters student: it is easiest if you have either taken a class I taught (and done well) or have prior experience (e.g., from internships or prior employment) in systems or networking.

If you are applying for a PhD at NYU: I am always interested in recruiting students, you can just mention me in your applications. You do not need to send me an e-mail before applying, and I cannot evaluate your application.

Teaching

Fall 2025 Undergraduate Operating Systems
Spring 2025 Distributed Systems
Spring 2024 Distributed Systems
Fall 2023CS202: Undergraduate Operating Systems
Spring 2023 Big Data and Machine Learning
Fall 2022 Distributed Systems
Spring 2022 Big Data and Machine Learning
Fall 2021 Distributed Systems
Spring 2021 Big Data and Machine Learning
Fall 2020 Distributed Systems
Spring 2020 Undergraduate Operating Systems
Fall 2019 Undergraduate Computer Networks
Fall 2018 Distributed Systems

Publications

2025

2024

2023

2022

2021

2020

2019

2018

2017

2016

2015

2014

2013

2012

2008

Service

Reviewing