Software Engineer area of Machine Learning
Listed on 2026-02-16
-
Software Development
Software Engineer, Cloud Engineer - Software
Location: Zürich
The Swiss National Supercomputing Centre (CSCS) develops and operates a high-performance computing and data research infrastructure that supports world‑class science in Switzerland. Its user laboratory is available to domestic and international researchers in academia, industry, and the business sector. The centre is operated by ETH Zurich and has offices at its data centre in Lugano and in Zurich.
For this position the preferred work location is Zurich, but it could also be Lugano.
Project backgroundWe are seeking a driven software engineer to work at the intersection of machine learning and high‑performance computing, tackling complex, open‑ended challenges to deliver scalable solutions. You will design and optimise a software‑defined infrastructure that enables cutting‑edge AI/ML projects in a high‑performance and data‑intensive environment.
We value technical excellence, curiosity, and the ability to learn and grow, rather than a initial perfect match of a skills checklist. If you are motivated to make an impact in this space but do not meet all requirements, we still strongly encourage you to apply.
We are offering a contract initially limited to two years, which will provide the opportunity to contribute to a fast‑evolving AI landscape in which CSCS plays a key role and to support high‑impact initiatives both nationally and internationally. This includes contributions to the Swiss AI Initiative and similar programmes, such as lending support for the development and release of the Apertus models.
The initial two‑year contract could potentially be extended or even become permanent.
Job description- Collaborate with researchers and users to understand and solve complex, real‑world problems
- Contribute to AI/ML projects, including large language model training, inference, fine‑tuning, and HPC‑accelerated workflows
- Develop, maintain, and optimise software and systems, from core libraries programming to scripting and automation
- Take ownership of high‑impact tasks and see them through to completion while maintaining effective communication with stakeholders
- Jump into ill‑defined problems, explore solutions, and learn along the way
We welcome engineers with diverse backgrounds who are eager to contribute to our mission. We are primarily looking for strong technical foundations, sound engineering judgment, and the ability to bridge gaps across domains. Curiosity, adaptability, willingness to learn on the job, and potential for growth matter more to us than a perfect initial match of technical requirements.
Technical environment and areas of interest- Large‑scale parallel and distributed systems, including performance tuning
- Programming and tooling such as C/C++, Python, CUDA, OpenMP, and Spack
- Linux‑based systems, scripting, Slurm, and general systems engineering
- Containerised and Kubernetes‑based service deployment and operations
- Large‑scale machine learning and LLM workflows (e.g., PyTorch, Megatron, pre‑training, fine‑tuning, inference)
- Storage and data systems (e.g., Lustre, NFS, VAST)
- Collective communication and high‑speed networking (e.g., NCCL, RCCL, MPI)
- Monitoring and observability (e.g., DCGM, LDMS, metrics dataflow pipelines and data products development)
- Testing frameworks, software quality practices, and Dev Ops/Git Ops approaches
- Self‑motivated, proactive, focused, and collaborative
- Strong problem‑solving mindset and comfort tackling complex or ambiguous problems
- Clear communicator with a strong sense of user needs
- Open to learning new technologies and working across disciplines
- Comfortable asking for help and engaging the right expertise when needed
- Ability to thrive in collaborative, self‑organising environments based on Agile principles
- Experience with structured development practices such as test‑driven development is a plus.
- Curiosity:
You enjoy learning, exploring new ideas, and understanding problems deeply - Openness:
You listen, collaborate, and are receptive to different perspectives - Courage:
You tackle challenging or ambiguous problems and are willing to take initiative - Supportive:
You help colleagues and users succeed and contribute to a positive…
To Search, View & Apply for jobs on this site that accept applications from your location or country, tap here to make a Search: