He earned his PhD from Rice University in 1994, and has held faculty positions at Indiana University, University of Michigan, and Rice University. His research interests include inverse problems, computational optimisation, and mathematical software.