Before joining the University of Colorado, he was at the University of Massachusetts at Amherst for his PhD and at Stanford University for his postdoc. His research interests include tools and techniques for understanding program performance, programmer productivity tools, program analysis, memory management, and compiler optimizations.