He received a Bachelors Degree in Computer Science and Engineering from the Indian Institute of Technology, Kharagpur in 1984 and a Ph.D.in Computer Science from Rice University, Houston in 1990. He was a member of the research faculty at Carnegie Mellon University, Pittsburgh from 1990 to 1999.