His main research interests include programming languages, program analysis, and software engineering, with an emphasis on improving performance, energy efficiency, and resilience in the face of software errors and approximation opportunities. The main topics of his recent publications include probabilistic inference via static program analysis, probabilistic analysis of reliability in computer systems, approximate computing, program repair, and compiler optimizations.