Meet ApplyKite Twin, the application assistant that learns with you
Meet your Twin, it learns with you
Your Twin learns with you
Launch week codes:30% off annual Pro20% off monthly Pro
Ends in00h00m00s
Ends in00h00m00s
Lund University
Top university
4 days ago
PhD Position in Computer Science: Program Transformation and Software Evolution Lund University in Sweden
Degree Level
PhD
Field of study
Computer Science
Funding
The position is a full-time, fixed-term doctoral employment with a monthly salary. Doctoral studies normally run for four years, with extensions for teaching and other departmental duties, which are limited to a maximum of 20% of working hours. The employment includes Lund University employee benefits, generous annual leave, and an occupational pension scheme. The project also offers collaboration and industrial outreach opportunities through ELLIIT.
Deadline
Nov 27, 2026
Country
Sweden
University
Lund University
Apply for this position
Keywords
Suggested positions
About this position
Lund University’s Department of Computer Science is seeking a doctoral student in computer science to research program transformation and software evolution within the Software Development and Environments division at LTH.
The project aims to develop tools and techniques that provide rigid guard-rails for software refactoring and other forms of software evolution. Because program transformations may be produced unreliably by human developers or large language models, the research will investigate mechanisms that inspect, steer, and augment transformation sequences to detect and recover from unintended behavioural changes.
The doctoral student will work on automatic program analysis and program transformation for safer refactoring and related software engineering tasks. The work combines research-method development with artefact-oriented software development, including algorithms, software tools, and components evaluated in realistic scenarios and integrated with the project team. Relevant research areas include compiler construction, static and dynamic program analysis, refactoring, metaprogramming, automatic program repair, systems programming, and software evaluation.
The position is based in the Software Development and Environments division, which explores programming languages, compiler construction, declarative specification languages, distributed development environments, refactoring, program analysis, and automatic program repair. The division develops the JastAdd metacompilation framework, ExtendJ, IntraJ, and MetaDL.
The project is funded by the Excellence Center at Linköping–Lund in Information Technology and includes collaboration with the Natural Language Processing group at Linköping University. The research environment also provides opportunities to engage with academic partners in Linköping and industrial researchers through ELLIIT, including its annual workshop.
Funding details
The position is a full-time, fixed-term doctoral employment with a monthly salary. Doctoral studies normally run for four years, with extensions for teaching and other departmental duties, which are limited to a maximum of 20% of working hours. The employment includes Lund University employee benefits, generous annual leave, and an occupational pension scheme. The project also offers collaboration and industrial outreach opportunities through ELLIIT.
What's required
Applicants must hold a second-cycle qualification, have completed at least 240 credits including at least 60 second-cycle credits, or possess substantially equivalent knowledge. Specific admission requirements include at least 60 advanced-level credits relevant to the research topic or an MSc in Computer Science and Engineering, Electrical Engineering, Information and Communication Technology, Engineering Physics, or Engineering Mathematics. Applicants must have knowledge or experience in compiler construction or the foundations of static program analysis; strong independent problem-solving, written and oral communication, collaboration, English-language, programming, planning, persistence, curiosity, and willingness to learn. Advantageous qualifications include automatic program transformation, refactoring or metaprogramming tools, team software development, dynamic program analysis, Java, functional or declarative programming, natural language processing, machine learning or large language models, systematic software evaluation and statistics, systems programming, and relevant discrete mathematics.
How to apply
Submit an English-language application through the Varbi application portal. Include a CV, cover letter, degree or study certificates confirming eligibility, and any supporting documents such as transcripts, references, or recommendation letters.
Make your next move.
Prepare your application
Review drafts and confirm requirements with the university.
Make your next move.
Prepare your application
Review drafts and confirm requirements with the university.