Rohan Padhye's Headshot

About Me

I research techniques to automatically discover software bugs. My work spans several areas including software engineering, programming languages, systems, and security. My recent projects make use of dynamic program analysis and coverage-guided fuzz testing. My papers have been published at venues such as ICSE, ASE, ISSTA, OOPSLA, SOSP, and USENIX Security. My research tools have been used to discover 50+ new bugs in widely used open-source software and have been adopted by various firms in industry.

I completed my Ph.D. in Computer Science at UC Berkeley, where I was advised by Koushik Sen. My dissertation investigated techniques for specializing program analysis and automated testing tools using artifacts that incorporate the knowledge of domain experts. Complementing my doctoral research, I collaborated with Microsoft Research on detecting thousands of concurrency bugs at industry-scale and with Samsung Research America on fuzzing trusted execution environments. Before going to Berkeley, I spent two years at IBM Research India, developing productivity tools using data mined from GitHub and other repositories. I hold a Master's degree from IIT Bombay.

I am also the lead designer of the ChocoPy programming language, which is used to teach the undergraduate compilers courses at UC Berkeley (and increasingly at other universities too).

My academic ancestors include Newton, Galelio, Kepler, and Copernicus.




  1. BigFuzz: Efficient Fuzz Testing for Data Analytics using Framework Abstraction
    Qian Zhang, Jiyuan Wang, Muhammad Ali Gulzar, Rohan Padhye, Miryung Kim
    ASE 2020 (accepted)
  2. Quickly Generating Diverse Valid Test Inputs with Reinforcement Learning
    Sameer Reddy, Caroline Lemieux, Rohan Padhye, Koushik Sen
    ICSE 2020 (DOI | PDF)
  3. PARTEMU: Enabling Dynamic Analysis of Real-World TrustZone Software Using Emulation
    Lee Harrison, Hayawardh Vjayakumar, Rohan Padhye, Koushik Sen, and Michael Grace
    USENIX Security 2020 (to appear | preprint PDF)
  4. Efficient and Scalable Thread-Safety-Violation Detection --- Finding thousands of concurrency bugs during testing
    Guangpu Li, Shan Lu, Madanlal Musuvathi, Suman Nath, and Rohan Padhye
    SOSP 2019 (DOI | PDF | GitHub) Best Paper Award
  5. SAFFRON: Adaptive Grammar-based Fuzzing for Worst-Case Analysis
    Xuan Bach D. Le, Corina Pasareanu, Rohan Padhye, David Lo, Willem Visser, and Koushik Sen
    JPF 2019 (DOI)
  6. ChocoPy: A Programming Language for Compilers Courses
    Rohan Padhye, Koushik Sen, and Paul N. Hilfinger
    SPLASH-E 2019 (DOI | Paper PDF | Slides PDF)
  7. Efficient Fail-Fast Dynamic Subtype Checking
    Rohan Padhye and Koushik Sen
    VMIL 2019 (DOI | Paper PDF | Slides PDF)
  8. FuzzFactory: Domain-Specific Fuzzing with Waypoints
    Rohan Padhye, Caroline Lemieux, Koushik Sen, Laurent Simon, and Hayawardh Vijayakumar
    OOPSLA 2019 (DOI | Paper PDF | Slides PDF | Talk Video | GitHub)
  9. Semantic Fuzzing with Zest
    Rohan Padhye, Caroline Lemieux, Koushik Sen, Mike Papadakis, and Yves Le Traon
    ISSTA 2019 (DOI | Paper PDF | Slides PDF | GitHub) ACM SIGSOFT Distinguished Artifact Award
  10. JQF: Coverage-Guided Property-Based Testing in Java
    Rohan Padhye, Caroline Lemieux, and Koushik Sen
    ISSTA-DEMO 2019 (DOI | PDF | Talk Video) ACM SIGSOFT Tool Demonstration Award
  11. Validity Fuzzing and Parametric Generators for Effective Random Testing
    Rohan Padhye, Caroline Lemieux, Koushik Sen, Mike Papadakis, and Yves Le Traon
    ICSE-POSTER 2019 (Abstract DOI | Poster)
  12. PerfFuzz: Automatically Generating Pathological Inputs
    Caroline Lemieux, Rohan Padhye, Koushik Sen, and Dawn Song
    ISSTA 2018 (DOI | PDF) ACM SIGSOFT Distinguished Paper Award
  13. Travioli: A Dynamic Analysis for Detecting Data-Structure Traversals
    Rohan Padhye and Koushik Sen
    ICSE 2017 (DOI | PDF)
  14. Mining API Expertise Profiles with Partial Program Analysis
    Senthil Mani, Rohan Padhye, and Vibha Singhal Sinha
    ISEC 2016 (DOI | PDF)
  15. Detecting and Mitigating Secret-Key Leaks in Source Code Repositories
    Vibha Singhal Sinha, Diptikalyan Saha, Pankaj Dhoolia, Rohan Padhye, and Senthil Mani
    MSR 2015 (DOI)
  16. The Synergy Between Voting and Acceptance of Answers on StackOverflow, or the Lack Thereof
    Neelamadhav Gantayat, Pankaj Dhoolia, Rohan Padhye, Senthil Mani, and Vibha Singhal Sinha
    MSR 2015 (DOI)
  17. Smart Programming Playgrounds
    Rohan Padhye, Pankaj Dhoolia, Senthil Mani, and Vibha Singhal Sinha
    ICSE-NIER 2015 (DOI | PDF)
  18. NeedFeed: Taming Change Notifications by Modeling Code Relevance
    Rohan Padhye, Senthil Mani, and Vibha Singhal Sinha
    ASE 2014 (DOI | PDF)
  19. A Study of External Community Contribution to Open-Source Projects on GitHub
    Rohan Padhye, Senthil Mani, and Vibha Singhal Sinha
    MSR 2014 (DOI | PDF) Honorable Mention in the MSR Hall of Fame
  20. API as a Social Glue
    Rohan Padhye, Debdoot Mukherjee, and Vibha Singhal Sinha
    ICSE-NIER 2014 (DOI | PDF) Award for Innovation and Potential Impact
  21. Interprocedural Data Flow Analysis in Soot using Value Contexts
    Rohan Padhye and Uday P. Khedker
    SOAP 2013 (DOI | PDF)


Bug Trophy Case

Here are some issues in open-source software that were discovered using tools that I developed:

Performance Bugs

Memory-Safety Bugs

Correctness Bugs

Academic Genealogy

Thanks to the MGP, I've discovered two very exciting lines in my academic ancestry! Here is a visualization that I made, complete with era-appropriate flags: