Before joining Columbia, he spent one year as a postdoc in the computer science department at UC Berkeley. He received his B.A. in mathematics from the University of Cambridge in 2006, M.A. in mathematics from Caltech in 2008, and Ph.D. in operations research from MIT in 2012.