2019-01399 - LLVM Expert Engineer in Optimizing Compilers
Le descriptif de l’offre ci-dessous est en Anglais

Type de contrat : CDD de la fonction publique

Niveau de diplôme exigé : Bac + 5 ou équivalent

Autre diplôme apprécié : PhD thesis

Fonction : Ingénieur scientifique contractuel

Niveau d'expérience souhaité : De 3 à 5 ans

Contexte et atouts du poste

The objective is to take responsibility for the technical management of the compilation framework Apollo, dedicated to runtime speculative parallelization and optimization of programs, and to handle the development of specific LLVM passes.


Mission confiée

With the help of researchers involved in the Apollo project, the recruited person will be taken to extend and maintain the Apollo software framework, and will also serve as the principal interlocutor with the user community.

For a better knowledge of the proposed research subject:
The current release of Apollo, as well as technical presentations and scientific references are available at the following URL: http://apollo.gforge.inria.fr.

The recruited person will be in connection with PhD and Master students who take part of Apollo's extensions and improvements.

The person recruited is responsible for the software developments related to Apollo and will take initiatives for significant improvements and extensions.

The person recruited will be in charge of the technical management (extensions, improvements, publication of new releases, benchmarking), as well as some human management (user community, supervision of students).

Principales activités

Main activities:

  • Improvement and extensions of the Apollo LLVM analysis & transformation passes
  • Implement extensions related to inter-procedural analysis and dynamic scheduling
  • Implement improvements and correct bugs
  • Lead a user community
  • Write documentation and reports
  • Supervise students

Additional activities: 

  • Contribute to scientific publications
  • Present the works’ progress to the research team and to the international community


Technical skills and level required: expertise in Clang/LLVM, C/C++ programming and Linux/Unix systems; good knowledge of assembly language and processor architecture; knowledge of compilers and compilation techniques; knowledge of parallelism and code parallelization techniques.

Languages: fluent English.

Relational skills: ability to work in a team, capacity to listen and to share.



  • Subsidised catering service
  • Partially-reimbursed public transport
  • Social security
  • Paid leave
  • French courses


Remuneration : between 2632 € and 3540 € according to experience and diploma.