Software Engineers (Junior and Senior) at CSCS

100%, Zurich, permanent

The Swiss National Supercomputing Centre (CSCS) is operated by ETH Zurich and is located in Lugano, Switzerland. CSCS develops and provides the key supercomputing capabilities required to solve important problems in science and society.

To support the complex workflows of our scientific user communities, we are in the process of enhancing the cloud-service portfolio of the CSCS supercomputing ecosystem.  We are therefore looking for Software Engineers (Junior and Senior) 100%, Lugano or Zurich. 

Starting date: as soon as possible.

Project background

The mission of the Software Engineering Unit is the architecture and development of cloud technologies enabling interactive scientific computing services in HPC, including containerization, REST APIs and middleware, with a strong emphasis on preserving the performance and scalability characteristics of the supercomputing ecosystem. Future technology evaluation and software development tasks are also within the scope of the Unit, as it is the performance analysis of scientific applications, benchmarks and platform services.

Job description

Your tasks will include the design, development, deployment and maintenance of software components and tools, which are an essential part of the service portfolio that CSCS offers to the scientific community. You will work in multidisciplinary project teams to implement next-generation software services on top of world-class HPC infrastructure. More specifically, testing, deployment and performance benchmarking of microservices that are part of the CSCS portfolio, which includes supercomputing systems, as well as programmable infrastructure like Kubernetes clusters, and parallel filesystems and software containers. You will be conducting software development activities for the realization of scientific workflows. In particular, automated configuration, testing, continuous integration and deployment (CI/CD) of software across different high-end computing platforms.

Your profile

  • You are expected to have a BSc or MSc in computer science, mathematics, engineering or natural sciences and, depending on your level of qualifications, 4+ years of experience with software development in a professional working environment.
  • You are expected to be comfortable programming in a different language, including a good understanding of algorithms and data structures.
  • Experience in collaborative software development within a DevOps environment is essential, as well as is experienced in modern testing practices and automated deployment of codes, including configuration management.
  • A good understanding of the components of a cloud development stack to develop, debug and trace software services that enable high-performance scientific workflows in cloud-like environments is considered a plus.
  • Knowledge about parallel filesystems and application development, as well as hands-on experience with Terraform, Ansible Tower, Vault, Kubernetes, and batch jobs, is valuable.

You will join us on the exciting journey of building next-generation, high-performance cloud services. Your passion for cloud and software engineering makes you feel comfortable promoting a DevOps mindset across the organization. You work independently, have excellent problem-solving skills and you are excited about learning new things. You are characterised by being a team player with strong interpersonal communication skills who feel comfortable working in an international, fast-changing working environment located in Switzerland. Excellent command of written and spoken English (our working language) is a must. We value the diversity of our team and particularly encourage female candidates to apply.