About the position
Description of the workplace
The position is within the Software Development and Environments division, part of the Department of Computer Science. The division is exploring novel tools, languages, and methods for supporting software development, and conducts research in a variety of topics that include refactoring, program analysis, compiler construction, declarative specification languages, distributed development environments, and automatic program repair. Its research involves strong collaborations both locally within Lund University, internationally with other universities, and with industrial partners, such as ABB and Ericsson, including research driven by industrial PhD students. The division currently has twelve members, and regularly organises group activities to foster a positive working environment.
The division is actively developing the JastAdd metacompilation framework, which is the foundation for several compilers and software tools, including the division's ExtendJ extensible Java compiler and the static analysis tools IntraJ and MetaDL.
More about the Software Development and Environments group (sde.cs.lth.se/)
More about JastAdd (jastadd.cs.lth.se/web/)
More about ExtendJ (extendj.org)
More about MetaDL (github.com/lu-cs-sde/metadl)
Being a doctoral student
As a doctoral student, you are both admitted as a student and employed at Lund University.
As a doctoral student, you will learn to approach questions and challenges scientifically. In short, this means that you will be trained to think critically and analytically, to solve problems independently using the right methods, and to develop an awareness of research ethics. In addition, you will have the opportunity to work on projects, to develop your leadership and pedagogical skills. Throughout your studies, you will be guided by supervisors. Doctoral studies end with a thesis and a doctoral degree.
More about being a doctoral student at LTH on lth.se.
Subject and project description
This research project aims to develop novel tools and techniques that enforce rigid guard-rails during software refactoring and other forms of software evolution. We assume an unreliable source of program transformations, such as a human developer or a large language model. The guard-rail mechanism will then inspect, steer, and augment any sequence of program transformations to detect and recover from unintended behavioural change.
The position is funded by the Excellence Center at Linköping – Lund in Information Technology (ELLIIT), and it is a collaboration with the Natural Language Processing group at Linköping University, part of the division of Artificial Intelligence and Integrated Computer Systems.
More about ELLIIT (elliit.se)
More about the Division of Artificial Intelligence and Integrated Computer Systems at Linköping University (liu.se/en/organisation/liu/ida/aiics)
Work duties
You will primarily devote yourself to your doctoral programme, which includes participation in research projects as well as third cycle courses, seminars and conferences.
The work duties include:
Research on automatic program analysis and program transformation applied to preventing unintended behavioural change during refactoring and similar program evolution tasks. You will work towards exploring approaches that can aid real-world software evolution, and examine qualitative aspects of these approaches.
Applying appropriate research methods: depending on the trajectory of this research, different and possibly novel methodologies may be required to provide robust answers to the underlying research questions. You will learn, apply, and possibly support the development of suitable methods.
Artefact-oriented activity: You will develop software tools, algorithms, and other software components. These should be evaluated in realistic scenarios and integrated with, as well as shared within, the project team.
Presentation and collaboration: You will present your research findings at the annual ELLIIT workshop in southern Sweden and discuss your work at meetings with academic project partners, including personal meetings with our collaboration partners in Linköping.
Interaction with the industry: You will have opportunities to discuss your work and collaborate with industrial researchers, especially in Lund.
The duties also include participation in teaching and other departmental work (limited to a maximum of 20% of working hours).
Qualifications
To be eligible for admission and employment as a doctoral student, you must fulfil the requirements below.
Admission requirements
A person meets the general admission requirements for third-cycle courses and study programmes if the applicant:
has been awarded a second-cycle qualification, or has satisfied the requirements for courses comprising at least 240 credits of which at least 60 credits were awarded in the second cycle, or has acquired substantially equivalent knowledge in some other way in Sweden or abroad.
A person meets the specific admission requirements for third cycle studies in computer science if the applicant has:
at least 60 second-cycle credits at an advanced level with relevance for the research topic, or an MSc in Engineering in Computer Science and Engineering, Electrical Engineering, Information and Communication Technology, Engineering Physics or Engineering Mathematics.
Additional requirements
In order to complete the doctoral programme in question, the following are also required:
Knowledge or experience in at least one of the following areas (demonstrated e.g. in the form of a university course, or through professional experiences or contributions to relevant open source projects):
o compiler construction, or o the foundations of static program analysis.
good ability to work independently and to formulate and tackle research problems.
good written and oral communication skills.
good ability to cooperate.
very good knowledge of English, in speech and writing.
very good programming experience (demonstrated e.g. in the form of professional experiences, contributions to open source projects, or outstanding results in university courses).
persistence and the ability to plan and structure your own work curiosity and willingness to learn and adopt new techniques, especially within the cross-disciplinary scope of the project
Other qualifications (advantages)
For the doctoral programme in question, it is advantageous if you can demonstrate experience or knowledge in one or more of the following subjects:
developing automatic program transformation tools, such as o refactoring tools, or o meta-programming tools.
software development in teams, especially in the context of:
o professional software engineering, o open source projects, or o legacy software engineering projects.
dynamic program analysis.
programming in Java.
functional or declarative programming (logic programming, reference attribute grammars etc.).
natural language processing, machine learning, and/or applying large language models, such as o working with the underlying machine learning techniques, such as latent/embedding spaces, representation learning, or transformers, o training or fine-tuning such models, or o applying them to software development / software engineering tasks.
systematic evaluation of software systems and relevant statistical methods.
systems programming.
areas of discrete mathematics with relation to program analysis (lattice theory, type theory, Galois connections etc.).
We offer
Lund University is a public authority which means that employees get particular benefits, generous annual leave and an advantageous occupational pension scheme. This project additionally offers collaboration opportunities with Linköping University via its joint supervision structure, and industrial outreach opportunities via ELLIIT, such as the annual ELLIIT workshop.
More about working at Lund University on lu.se.
About the employment
The employment is a fixed-term employment at full time, with intended start date in the spring of 2027 or according to agreement, but no later than 2027-12-31. Third cycle studies at LTH consist of full-time studies for 4 years. In the case of teaching and other departmental duties, the employment is extended accordingly. Doctoral studentships are regulated in the Higher Education Ordinance (1993:100), chapter 5, 1-7 §§.
More about terms of employment for doctoral students on Lund University’s Staffpages.
How to apply
Applications shall be written in English and include:
CV and a cover letter stating the reasons why you are interested in the doctoral programme/employment and in what way the research project corresponds to your interests and educational background.
Copies of issued study certificates and/or awarded degree certificates. These must confirm that you meet the general and specific admission requirements for the doctoral programme and show that you have the subject knowledge required for the doctoral programme project.
Other documents you wish to be considered (grade transcripts, contact information for your references, letters of recommendation, etc.)
We welcome your application.
This listing was collected from a public source and is reproduced here for
information only. Always confirm the details on the original posting before applying.
View the original posting