Know ATS Score
CV/Résumé Score
  • Expertini Resume Scoring: Our Semantic Matching Algorithm evaluates your CV/Résumé before you apply for this job role: PhD Position F/M LLM Powered Continuous Evolution of Scientific Computing Software.
France Jobs Expertini

Urgent! PhD Position F/M LLM-Powered Continuous Evolution of Scientific Computing Software Job Opening In Rennes – Now Hiring INRIA

PhD Position F/M LLM Powered Continuous Evolution of Scientific Computing Software



Job description

Contexte et atouts du poste

Environment


The candidate will be involved in the DiverSE team, joint to the CNRS (IRISA) and Inria, and in the Laboratory in High Performance Computing for Calculation and Simulation (LiHPC) of CEA DAM, affiliated to the University of Paris-Saclay.

It will be supervised by Benoit Combemale ( ) and Djamel Khelladi ( from Inria, and Dorian Leroy from CEA DAM.

The candidate can be either at Inria in Rennes or CEA DAM in Bruyère le chatel, and visit regularly the other site.

The PhD will be funded by the NumPeX program (

Mission confiée





The mission of this thesis revolves mainly around conducting research of excellence, which the DiverSE team strives to achieve.
A state-of-the-art review will be one of the first activities in order to better prepare the ground for the implementation of solutions and prototypes, as well as for conducting empirical experiments for a rigorous evaluation of contributions.

Principales activités

Context


Marc Andreessen argued about “Why Software Is Eating The World” in the WSJ [1].

This is also true for scientific computing that levarages on computing capabilities to understand and solve complex problems, in science (chemistry, physics, maths, biology…), industry (health, space, aeronautics, etc.) and public authorities.


In scientific computing, there is a significant disconnect between the lifetime of physics simulation codes (~20 years), HPC programming paradigms (~10 years), and supercomputers (<5 years).

This puts a heavy burden on the developers of these applications, as they are primarily physicists and numerical analysts, but nevertheless have to address software engineering and high performance computing (HPC) concerns when coding, and keep pace with advances in those fields [2].


To achieve proper separation of concerns, the use of domain-specific languages (DSLs) tailored to the needs of the domain experts [3] is a promising perspective to allow physicists and numerical analysts to address concerns specific to their domains, while the language developers address the software engineering and HPC concerns.


However, to integrate and experiment with cutting-edge advances in software engineering and HPC, it is not feasible to start from scratch or manually rewrite the existing code due to the extensive lifetime and size of physics simulation codes.

Worst, as both software and hardware capabilites continously evolve, one must continously update and maintain (i.e., co-evolve) its code as a consequence.

Unfortunately, this task is still manual and is a burden for developers.


Today, AI advancement showed promising results and plethora of LLMs are re-shaping developers daily activity [4].

This is no different in scientific computing and opens up several perspectives and opportunities for automation.


Objectives


The objective of this PhD thesis is to provide building blocks enabling the rapid evaluation and adoption of cutting-edge advances in software engineering and HPC, in the context of scientific computing software, and simulation codes in particular, by leveraging LLMs.


The overall objectives are, beyond a survey of the state of the art [5, 6] on this topic and in adjacent contexts (i.e., non-scientific software), to explore the feasibility of powering continuous code evolution with LLMs. Among the many existing challenges, we aim to:

  • Investigate the balance between human intervention and automation required for this task (e.g., rewrite some parts by hand to kickstart the automated process).

  • Investigate and explore what kind of “evolution harness” must be built around the application, and to what extent this can be automated.

  • Experiment various LLM pipelines.

  • Investigate and explore how to enable incremental evolution (e.g., composition of components, interoperability), in particular in the case where the target for evolution is another language: the complete application can’t be evolved all at once, and each evolution increment must be validated.

    This will also help in the scalability challenge of evolving large complex code.

  • Investigate the extraction of evolutions at the language level from evolutions at the source code level, such as identifying emerging language constructs from source code evolutions.
  • Prerequisites

  • A degree (and strong background) in computer science (esp.

    software engineering)

  • Skills in programming and modeling languages, and supporting environments

  • Interests in machine learning (esp.

    LLMs)

  • Professional proficiency in English

  • Skills for presenting and writting

  • Autonomy, rigor and hard worker
  • References


    [1] Marc Andreessen,


    [2] Leroy, D., Sallou, J., Bourcier, J., & Combemale, B.

    .

    When scientific software meets software engineering.

    Computer, 54, 60-71.


    [3] Fowler, M.

    .

    Domain-specific languages.

    Pearson Education.


    [4] Ishaani, M., Omidvar-Tehrani, B., & Anubhai, A.

    .

    Evaluating human-AI partnership for LLM-based code migration.


    [5] Busch, D., Bainczyk, A., & Steffen, B.

    (2023, October).

    Towards LLM-Based System Migration in Language-Driven Engineering.

    In International Conference on Engineering of Computer-Based Systems (pp.

    191-200).

    Cham: Springer Nature Switzerland.


    [6] Almeida, A., Xavier, L., & Valente, M.

    T.

    .

    Automatic Library Migration Using Large Language Models: First Results.

    arXiv preprint arXiv:2408.16151.


    How to apply


    Send your CV, motivation letter, and grades of your bachelor and master with the diplomas.

    Avantages

  • Subsidized meals

  • Partial reimbursement of public transport costs

  • Leave: 7 weeks of annual leave + 10 extra days off due to RTT (statutory reduction in working hours) + possibility of exceptional leave (sick children, moving home, etc.)

  • Possibility of teleworking (after 6 months of employment) and flexible organization of working hours

  • Professional equipment available (videoconferencing, loan of computer equipment, etc.)

  • Social, cultural and sports events and activities

  • Access to vocational training
  • Rémunération

    monthly gross salary 2300 euros


    Required Skill Profession

    Computer Occupations



    Your Complete Job Search Toolkit

    ✨ Smart • Intelligent • Private • Secure

    Start Using Our Tools

    Join thousands of professionals who've advanced their careers with our platform

    Rate or Report This Job
    If you feel this job is inaccurate or spam kindly report to us using below form.
    Please Note: This is NOT a job application form.


      Unlock Your PhD Position Potential: Insight & Career Growth Guide