Software Engineer

European Synchrotron Radiation Facility (ESRF)

🕒 Full Time

🗓️ 6+ Months



2 weeks, 6 days ago

Additional Info
python redis

Job Posting is in English


The European Synchrotron, the ESRF, is an international research centre based in Grenoble, France.

Through its innovative engineering, pioneering scientific vision and a strong commitment from its 700 staff members, the ESRF is recognised as one of the top research facilities worldwide. Its particle accelerator produces intense X-ray beams that are used by thousands of scientists each year for experiments in diverse fields such as biology, medicine, environmental sciences, cultural heritage, materials science, and physics.

Supported by 22 countries, the ESRF is an equal opportunity employer and encourages diversity.

In the context of the upgrade of the ESRF beamline control system you will join the team of 5 engineers in charge of the development of BLISS, our new Python-based experiments sequencer.

The missions include participation in the assessment of new solutions to enable streamlined data analysis and the implementation of the data publishing part in BLISS, adding a simulation mode to BLISS or improving the configuration and usage of experimental set-ups in the BLISS shell.

As a BLISS team member, you will also have the opportunity to implement new features coming from scientist’s demands, refactoring parts of the code and fixing bugs as part of the day to day activity.


  • You should hold a Higher university degree (Master or equivalent diploma offering 300 ECTS) in Computing Science, Software Engineering or equivalent
  • 3 to 5 years experience as software engineer in a development team. Previous participation in projects involving writing a framework for other developers or users would be an asset
  • In-depth knowledge of the Python language
  • Good knowledge of Redis or equivalent
  • Familiarity with the scientific software ecosystem (for example numpy, scipy, HDF5, dask or celery, Apache Arrow, Jupyter notebooks, etc.)
  • Good understanding of gevent (preferably) or asyncio would be an asset
  • A genuine interest in applying best practices like test-driven development and code review
  • Good interpersonal skills are essential to integrate a team of engineers, as well as ability to interact with multi-disciplinary staff and facility users
  • Communication skills and proficiency in English (ESRF working language) to present ideas or developments
  • Open mindedness, good team spirit, taking initiatives and a sense of responsibility are requirements

Temporary contract, up to 36 months.

We offer a comprehensive benefits package designed to support your quality of life and your installation in the Grenoble area when relocation is needed.

The monthly salary may be complemented by additional allowances upon eligibility (expatriation allowance, etc.).