Before joining UCSD, he was a graduate student at UC Berkeley. Ranjit is interested in Programming Languages and Software Engineering, more specifically, in techniques for building reliable computer systems. His work draws from, combines and contributes to methods the areas of Model Checking, Program Analysis and Automated Deduction.