I obtained my B.A. in Mathematics and Computer Science from Harvard University in 2001, where my adviser was Prof. Michael Mitzenmacher. My interest in Coding Theory and Probabilistic Algorithm Design—which later reached fruition in well-received works on rateless and network coding—was born in Michael's classes.
From 2001 to 2003, I attended the Ph.D. program in Computer Science at the Courant Institute of Mathematical Sciences at NYU, which resulted in my M.Sc. in Computer Science. My tastes and interests, in systems and theory, were very influenced by my adviser Prof. David Mazières—now a Stanford University professor—and Prof. Joel Spencer—a true gentleman of Mathematics. With David I completed my currently most impactful work on Kademlia: a distributed algorithm that enables billions of peers to store and discover information collaboratively.
In 2012, I obtained my Ph.D. from MIT, Computer Science and Artificial Intelligence Lab, happy to have been advised by Prof. Jonathan Kelner and supported by Prof. Frans Kaashoek. At MIT I concentrated on Spectral Graph Theory and its applications to distributed combinatorial and numerical algorithms. My work with Jon on electric routing is the foundation for a new generation of robust, resilient, secure and anonymous computation systems, built on top of socially-engineered often-faulty communication topologies.
Following, during 2012, I worked at Tumblr, Inc. where I developed a new paradigm for efficient development and sustenance of data-processing distributed applications, called the Go Circuit.
I am interested in all aspects of distributed applications: the languages and tools we use to build them, the higher-level software metaphores we build to hide away the complex semantics of subsystem failures in distributed systems, design and analysis of numerical algorithms for pivotal problems like solving linear systems and sketching massive structured data, even more general tools for the more challenging peer-to-peer setting.
I am an avid Ashtangi and rock climber.