Joshua Sunshine

Associate Professor

Director, REUSE program

Office: TCS Hall 323

I am an Associate Professor of Computer Science at Carnegie Mellon University. My home department is the Software and Societal Systems Department (S3D) and I have a courtesy appointment in the Human-Computer Interacation Institute.

I have broad research interests at the intersection of programming languages and human-computer interaction. I am particularly interested in better understanding of the factors that influence the usability of reusable software components.

I am fortunate to work with amazing students. See my advising page for details.

I direct the Research Experience for Undergraduates in interdisciplinary Software Engineering (REUSE) program with Charlie Garrod and Claire Le Goues. The program provides an opportunity for a diverse cohort of undergraduates from school across the country to spend the summer working with the world’s leading computer scientists. Students conduct research in a broad range of areas, including: collaboration and teams, computational statistics, computer architecture, diagrams and visualization, data mining and analysis, embedded systems, human-computer interaction, networking, privacy, program synthesis, program repair, programming languages, security, software architecture, societal computing, software requirements, and testing.

I completed my PhD in Software Engineering from Carnegie Mellon in December 2013. My dissertation focused on the usability of software libraries with ordering constraints (API protocols). I graduated from Brandeis University in 2004 and worked for almost four years as a software engineer before starting graduate school. I’m married to Kira Sunshine, and we have three children: Akiva, Elisheva, and Tamir.

selected publications

  1. FSE
    TerzoN: Human-in-the-Loop Software Testing with a Composite Oracle
    Matthew C. Davis, Amy Wei, Brad A. Myers, and Joshua Sunshine
    Proceedings of the ACM on Software Engineering, Volume 2, Issue FSE, 2025.
  2. ICSE
    A Study of Undefined Behavior Across Foreign Function Boundaries in Rust Libraries
    Ian McCormack, Joshua Sunshine, and Jonathan Aldrich
    In Proc. International Conference on Software Engineering (ICSE), 2025.
  3. L@S
    Edgeworth: Efficient and Scalable Authoring of Visual Thinking Activities
    Wode Ni, Sam Estep, Hwei-Shin Harriman, Kenneth R. Koedinger, and Joshua Sunshine
    In Proc. of the ACM Conference on Learning @ Scale, 2024. 🏆 Best Paper Nominee
  4. FSE
    Nanofuzz: A usable tool for automatic test generation
    Matthew Davis, Sangheon Choi, Sam Estep, Brad Myers, and Joshua Sunshine
    In Proc. of the ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (ESEC/FSE), 2023.