Job offer

CNRS
Toulouse, France
14 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Job source

Tech stack

Memory Management Embedded Software Multiprocessing System Programming Type Systems Parallel Computation Information Technology Programming Languages

Job description

Developing more robust and better-adapted programming languages for diverse application domains is a major scientific challenge, both fundamental to computer science and highly relevant to broader societal issues. The CNRS-particularly CNRS Computer Science-aims to strengthen its national and international leadership in this field. Although programming languages are ubiquitous in both industrial and academic applications, their design and evolution still require theoretical and practical breakthroughs to bridge the gap between theory and real-world needs. A rigorous yet application-driven approach will not only connect theoretical advancements with practical implementation but also facilitate the effective transfer of innovations to industry

This CPJ targets four laboratories (DI ENS, LIP, LMF, Verimag), which are prominent players in the field of programming and compilation. The strategy of these units is to leverage this CPJ to strengthen themselves and broaden their expertise.

There remains a strong and ongoing need in the development, design, and semantics of programming languages to provide the most contextually appropriate abstractions possible. This is particularly valuable for producing compilers and mechanized verification tools. For instance, one might consider programming languages like Rust, which offers safe yet optimized memory management, making it suitable for systems programming applications. Alternatively, domain-specific languages for parallelism can bridge the gap between deterministic specifications and target embedded code capable of running on parallel architectures (e.g., multi-core systems). In most cases, these abstractions are achieved through the design of novel type systems, whose properties are formally proven. Exploiting these systems requires the development of modern compilation and verification techniques to generate code that is both safe and efficient. These research themes are actively explored by communities that publish in conferences such as POPL, PLDI, ICFP, OOPSLA, and ECOOP.

The activities of the person recruited will be part of the training dynamic of the higher education and research establishments envisaged through their specialized teaching programs in the field of science and technology.

The CNRS is developing a strong policy in favor of open science. Open science consists of making research results “as accessible as possible and closed as necessary”. As such, the CNRS aims to make 100% of the texts of publications resulting from the work of its laboratories accessible , in particular through deposit in HAL. The data produced must also be made available and reusable, except for specific restrictions. In addition, the guiding principles of individual evaluation have been revised in accordance with the DORA declaration, to be more qualitative and to take into account all facets of the researcher’s profession.

The dissemination of the results will be done through world-class scientific productions: publications, patents, software… In addition, the results will be communicated to various targets such as scientific communities, media, decision makers, general public, schools, etc., with an adapted calendar. Specific tools may be developed such as websites, newsletters, meetings, international symposia, summer schools and conferences.

The relationship between science and society is now recognized as a full dimension of scientific activity. The project will develop this dimension in synergy with all the partners. The resulting research work will contribute to informing public decision-making. Participatory science initiatives may be initiated with actors from the project’s socio-economic and cultural eco-system.

Requirements

Research Field Computer science

Education Level PhD or equivalent

Research Field Mathematics, holders of a doctorate or a PhD or equivalent degree or applicants who have gained scientific. There is no restriction on the age or nationality of applicants. All CNRS positions are accessible to people with disabilities, with special arrangements for tests made necessary by the nature of the disability.

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on emploi.cnrs.fr

Good distractions

Talks and stories from around this role — technically off-topic, practically not.

3:52 min

Comparing French work-life balance principles with international engineering practices

Chris Heilmann +2 · LIVE

2:35 min

Exploring expressive type systems in future development workflows

Veit Heller Veit Heller · WWC Europe 2026

18 sec

Introduction to Rust's ownership model and guided memory management

Stefan Baumgartner · WWC 2023

1:37 min

Supporting multiprocessing with custom copyreg pickling

Konstantin Bespalov · WWC 2023

2:53 min

Transitioning from linguistics and teaching into software engineering

Yasmine Kordjazy · Coffee With Developers

1:25 min

Introduction to esoteric and advanced type systems

Veit Heller Veit Heller · WWC Europe 2026

Videos

See all

Related articles

See all