Doctoral student in Computer Science with focus on Cloud-Based Language Tooling

Updated: 2 months ago
Job Type: FullTime
Deadline: 30 Mar 2021

Project description
We offer a PhD position in computer science to qualified candidates with an interest for programming languages (both textual and visual), meta programming, and cloud solutions. The position is financed by the Swedish strategic research area ELLIIT (www.liu.se/elliit ). The work will be done in a cooperation project between research groups at Lund University and Linköping University, and in close contact with industry partners.

Most current tooling for programming languages is platform-dependent, requiring installation of special software. In contrast, through cloud tooling, the editing and development can be done directly in the browser, and high-performance servers can be used for data storage and computation-intensive work. The goal of the project is to develop general methods for constructing cloud tooling for textual and visual languages.

Work duties
The work will be based on reference attribute grammars (RAGs), which is a high-level declarative formalism for specifying languages and generating compilers and other tooling. In particular, we will investigate

  • how to automatically distribute RAG-based tooling into client and server tiers
  • trade-offs between different distribution choices to achieve low latency on the client side as well as overall efficiency
  • how to apply and improve incremental and parallel algorithms for RAG evaluation in this setting
  • different data structures for storing attributes, in order to speed up evaluation
  • how to use and extend language server protocols for different kinds of languages and interactions
  • application of the techniques to object-oriented textual and visual languages, including languages for modeling, simulation, and control

The research is "artifact-oriented": you will implement tools and algorithms and evaluate them on realistic scenarios and benchmarks.

The main duties of doctoral students are to devote themselves to their research studies which includes participating in research projects and third cycle courses. The work duties will also include teaching and other departmental duties (no more than 20%).

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:

  • Very good oral and written proficiency in English.

Assessment criteria
Selection for third-cycle studies is based on the student’s potential to profit from such studies. The assessment of potential is made primarily on the basis of academic results from the first and second cycle. Special attention is paid to the following:

  • Knowledge and skills relevant to the thesis project and the subject of study.
  • An assessment of ability to work independently and to formulate and tackle research problems.
  • Written and oral communication skills
  • Other experience relevant to the third-cycle studies, e.g. professional experience.
  • Other assessment criteria:

    • Strong programming and math skills
    • Knowledge about programming languages and their implementation
    • Experience from software development, agile methods, and open-source development
    • Experience from web development and distributed systems is also of value

    Consideration will also be given to good collaborative skills, drive and independence, and how the applicant, through his or her experience and skills, is deemed to have the abilities necessary for successfully completing the third cycle programme.

    Terms of employment
    Only those admitted to third cycle studies may be appointed to a doctoral studentship. Third cycle studies at LTH consist of full-time studies for 4 years. A doctoral studentship is a fixed-term employment of a maximum of 5 years (including 20% departmental duties). Doctoral studentships are regulated in the Higher Education Ordinance (1993:100), chapter 5, 1-7 §§.

    Instructions on how to apply
    Applications shall be written in English and include a cover letter stating the reasons why you are interested in the position and in what way the research project corresponds to your interests and educational background. The application must also contain a CV, degree certificate (or information about when you plan to have completed your degree), transcript of grades, contact information to two references, and other documents you wish to be considered.

    For more information about the position, see http://cs.lth.se/open-positions/phd-student-in-cloud-based-language-tooling


    View or Apply

    Similar Positions