About Me

I'm a Ph.D. student at the University of California, Riverside, advised by Prof. Manu Sridharan and a member of the RIPLE research group. My research centers on programming languages and software engineering, with a special focus on creating tools that boost the reliability and security of large-scale software systems. Recently, I developed an advanced type inference solution for NullAway, offering capabilities unmatched by other tools, and created Annotator, an automated tool that seamlessly integrates NullAway into existing codebases.


Work Experience

Ph.D. Research Intern at Programming Systems Group (PSG) Uber Technologies, Inc.
Jun, 2022 - Sep, 2022
Worked on enhancing Annotator to work at monorepo scale. Annotator is a tool designed to simplify and accelerate the adoption of NullAway in existing codebases. By automating the search for a set of annotations that minimizes reported NullAway errors, it streamlines onboarding projects to NullAway. Once executed, Annotator can bring code to a state where no NullAway errors are reported, enabling immediate NullAway integration. For cases where errors cannot be fully resolved with annotations alone, Annotator automatically applies suppression annotations. It also considers build target boundaries and can be configured to avoid adding annotations that might trigger errors in downstream dependencies. This modular approach supports large-scale projects, allowing them to adopt NullAway incrementally, target by target. Used internally at Uber, Annotator has successfully annotated millions of lines of code, facilitating the integration of an entire Java monorepo into NullAway.
Recognized for its impact, with a dedicated blog post, Automating Java Codebase Annotations for Null Safety published by Gitar.

Publications

Practical Inference of Nullability Types at FSE (Watch Talk)
2023
Nima Karimipour, Justin Pham, Lazaro Clapp, and Manu Sridharan. Practical Inference of Nullability Types. In 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE 2023), 2023. [ bib | DOI | .pdf]

Education

Ph.D. Student in Computer Science and Engineering at University of California, Riverside
2020 - Present
Bs.c. in Computer Engineering at Sharif University of Technology
2014 - 2018