He teaches courses on computer architecture, advanced computer architecture, parallel and distributed systems. Along with teaching, he is the director of the SRISHTI research group that conducts research in next generation processors, and parallel software. Prior to his appointment at IIT Delhi, he was a Research Staff Member in IBM Research Labs, Bangalore. He has a Ph.D in computer science from the University of Illinois at Urbana-Champaign, and a B.Tech in computer science from IIT Kharagpur.