Scientific Software Developer – Open Position

100%, Zurich, fixed-term

The Swiss National Supercomputing Centre (CSCS) is operated by ETH Zurich and its headquarters are located in Lugano, Switzerland. CSCS develops and provides key supercomputing capabilities for solving important problems in science and society. CSCS is leading an effort to develop scientific software and libraries for HPC platforms, support more complex workflows, and modernise access to HPC resources. This work involves close collaboration with domain scientists and working on cutting edge HPC technologies, to ensure that scientists will be able to fully utilize modern HPC systems. To this end, CSCS has open positions at our offices in Zurich or Lugano for Scientific Software Developers.

Job description

The main role is to develop software libraries and tools for scientific computing, and modernising the provision of the complex workflows and services required by the scientific community. You will contribute to developing performance-portable software for parallel multi-core and GPU-accelerated HPC architectures, working closely with application developers and domain scientists to gather requirements for further development and to integrate these libraries in established simulation packages. The broad range of application domains includes electronic structure theory, linear algebra, geophysics, and weather and climate. We offer an initial two-year contract, with the opportunity to extend.

Your profile

We are looking for someone with a sound knowledge and interest in computer science, software development and working knowledge of C++, Fortran or Python for developing performance-critical software.

Experience with the following are preferred, though there will be ample opportunities to learn and gain more experience with all of the above skills on the job:

  • The development of numerical or scientific simulation software;
  • Knowledge of node-level parallelism, multi-threading or GPU acceleration.
  • Distributed applications using MPI.
  • Developing for GPUs using CUDA, HIP or Intel OneAPI.
  • Continuous integration and continuous deployment (for example GitLab runners);
  • Sofware packaging and reproducible builds (including Spack, Easybuild and Nix);
  • Container technologies (including Docker, Singularity and Kubernetes).

You should have a Bachelor’s degree in computer science, mathematics or natural sciences, preferably with Masters or Ph.D. degrees or relevant industry experience. As an ETH employee, you will be working in an international environment, thus having an excellent command of English is required. We value the diversity of our team and particularly encourage female candidates to apply.

Interested?

We look forward to receiving your online application including:

  •  a letter of motivation
  • CV
  • diplomas and
  • certificates of employment

Please address your application to Mr Mark Sturks, CSCS Human Resources, Binzmühlestrasse 130, 8092 Zürich. Please note that we only accept applications submitted through our online application portal. Applications via email or postal services will not be considered.

For further information about CSCS please visit our website www.cscs.ch. Questions regarding the position should be directed by e-mail to Dr. Ben Cumming, ben.cumming@cscs.ch, or Dr. Vasileios Karakasis, vasileios.karakasis@cscs.ch (no applications).

For recruitment services the GTC of ETH Zurich apply.

In line with our values, ETH Zurich encourages an inclusive culture. We promote equality of opportunity, value diversity and nurture a working and learning environment in which the rights and dignity of all our staff and students are respected. Visit our Equal Opportunities and Diversity website to find out how we ensure a fair and open environment that allows everyone to grow and flourish.

Read more: https://www.jobs.ethz.ch/job/view/JOPG_ethz_AzAyiNCRm1UjMFn374