Understand How Software Changes
Study software repositories, related software systems, developer activity, and maintenance practices to understand how software changes, diverges, and accumulates maintenance challenges over time.
PhD Opportunity · Fall 2027
The Software Evolution (EVOL) Lab at the University of Nevada, Las Vegas (UNLV) is recruiting a PhD student to join our research group beginning in Fall 2027. The position provides four to five years of funding and offers the opportunity to conduct research at the intersection of software evolution, empirical software engineering, and AI-assisted software engineering.
THE OPPORTUNITY
EVOL Lab investigates important challenges in how software systems evolve and how developers can be better supported as they build, maintain, and change software. We combine empirical studies of real-world software development with the design, implementation, and evaluation of new methods, techniques, and research tools.
Study software repositories, related software systems, developer activity, and maintenance practices to understand how software changes, diverges, and accumulates maintenance challenges over time.
Develop techniques and research tools that help developers discover, adapt, verify, and integrate valuable software changes across independently evolving software systems.
Investigate how large language models and coding agents can support software engineering while preserving correctness, evidence, traceability, and meaningful human oversight.
NSF CAREER
The position is supported by an NSF CAREER Award focused on dependable reuse and adaptation of software changes across long-lived software forks. The research addresses a fundamental challenge in modern software development: valuable fixes, improvements, and capabilities developed in one software system may also benefit related systems, but independently evolving codebases can make those changes difficult to identify and safely reuse.
The PhD student will contribute to this broader research program while developing their own research expertise and scholarly identity. The work may involve empirical software engineering, repository mining, program analysis, software evolution, AI-assisted software engineering, research-tool development, experimentation, and evaluation with real-world software systems and developers.
WHO WE ARE LOOKING FOR
We are looking for a curious, self-motivated student who wants to become an independent software engineering researcher.
Competitive applicants should have a strong foundation in computer science or software engineering and be comfortable learning new technologies as research problems require.
SUPPORT
Funding for this position begins in Fall 2027 and is available for four to five years.
The selected student will pursue the PhD in Computer Science at UNLV while conducting research with the EVOL Lab. Funding and appointment details will follow applicable UNLV Graduate College and university policies.
Admission to the UNLV PhD program and selection for the funded EVOL Lab position are related but distinct processes. Applicants must satisfy the admission requirements of the UNLV Computer Science PhD program.
LOCATION
EVOL Lab is part of the Department of Computer Science at the University of Nevada, Las Vegas. UNLV is located in Las Vegas, Nevada, a growing metropolitan area in the American Southwest with abundant sunshine, extensive outdoor recreation, and convenient connections to destinations across the western United States.
Beyond the city's internationally known entertainment and hospitality industries, Las Vegas provides a distinctive environment in which to live, study, and conduct research while becoming part of the UNLV research community.
APPLICATION
Please spend some time learning about EVOL Lab's research, publications, and projects. We are particularly interested in applicants who can explain why our research aligns with their own interests and goals.
Begin your email subject with EVOL PhD 2027 and include:
Thoughtful, personalized inquiries are much more useful than generic emails. Shortlisted applicants may be invited to complete a research interview, research presentation, paper-review exercise, and technical programming task.