Field of Interest: Software Engineering & IT
Software is instrumental in CERN's mission of producing particle beams for physics experiments. Particle accelerators are complex installations with thousands of devices of all kinds that continuously shape, steer, observe and measure the particle beams. They are coordinated by the "accelerator control system", a vast distributed software system that ensures that each device involved does the right thing at the right moment and thus contributes to producing the particle beam. Our Engineers develop software at all layers, from firmware and embedded real-time systems, over micro-service-based backend server software, with huge databases, all the way up to GUIs used the control room and public information systems on the Web.
We consequently use main-stream, non-proprietary, open-source software systems as the basis of our work and strive to stay up to date with technology. Here are a few examples of such technology to give you an idea of our choices. Linux with Ansible for automation, docker containers and Kubernetes as execution platform; Java, Python, C++ and Typescript as programming languages; Kafka, Hadoop, and Spark for data analysis; Oracle, HBase, Influx, OpenSearch for data storage; Spring boot microservices with REST endpoints as architectural building blocks; Gitlab CI, Artifactory, SonarQube for quality assurance.