His main research interests are in quantum computation: algorithms, fault tolerance and cryptography. He initiated the study of quantum algorithms based on span programs and the general adversary bound. In collaboration with Umesh Vazirani and Falk Unger, he devised the first scheme by which a fully classical verifier can securely delegate a quantum computation to entangled quantum provers. He was an assistant professor at the Institute for Quantum Computation at the University of Waterloo from 2008-11, and joined USC in 2012.