Software Engineer in the Beams Department (BE).
Two posts are open in the Beams Department (BE), responsible for the beam generation, acceleration, diagnostics, controls and performance optimization for the LHC and its injector accelerators (http://beams.web.cern.ch/).
- One position will be within the Software Section of the Beam Instrumentation Group (BI). This Section provides software necessary to develop, test, diagnose and maintain the different instruments produced by the BI Group. You will take part in developing, testing and maintaining the software required for the diagnostic devices used by the accelerator operators to control the particle beams being produced and accelerated at CERN. (https://espace.cern.ch/be-dep-bi-sw/default.aspx)
- The other position will be within the Software for Real-time and Communication (SRC) Section of the Controls Group (CO). This section is in charge of core software packages and systems required for the real-time control, data acquisition and communication infrastructure used for the on-line operation of the CERN Accelerator complex (http://cern.ch/go/VV6v).
As a Software Engineer you will:
- Take responsibility for project(s) or system(s): discuss and negotiate with stakeholders to understand their needs.
- Propose and specify suitable solutions to fulfil client needs and the evolution of the service/system.
- Develop the real-time software (C++) using the software frameworks employed at CERN and according to supplied specifications.
- Maintain and upgrade existing software, in close collaboration with equipment specialists and end-users.
- Assist the users (operators, specialists, physicists...) in the use of the systems, taking on board their feedback in order to further optimise performance.
- Contribute to the improvement of software engineering practices and eventually mentor junior developers.
- For the position within the CO-SRC Section: participate in the first line support of operational Timing solutions.
- For the position within the BI-SW Section: develop and configure online software for data acquisition and analysis.
Master's degree in the field of computing, computer Sscience, software engineering, or equivalent.
Experience and competencies
The experience required for this post is:
- Demonstrated experience in modern, object-oriented software techniques using C++ and Java.
- Demonstrated experience of the software development life cycle: unit testing, continuous integration, version control, and documentation.
- Experience applying software quality assurance techniques (code reviews, unit testing, continuous integration), and practice with corresponding tools.
- Proven experience in maintaining and supporting complex operational software.
- Experience in the field of the design of real-time, embedded Linux systems will be an advantage.
The technical competencies required for this post are:
- Programming/Software development: C++, Java and Python; Scrum and Agile development methodologies.
- Application support: Typically takes the form of investigating and resolving issues and providing information about the systems. It may also include monitoring their performance.
- Systems design: the Unified Modeling Language (UML) would be an advantage.
The behavioural competencies required for this post are:
- Achieving results: following through on new ideas and innovations; driving projects along and see them through to their conclusions.
- Working in teams: building and maintaining constructive and effective work relationships; participating fully and taking an active role in team activities.
- Demonstrating flexibility: demonstrating openness to new ideas and situations; being willing to work on different projects simultaneously.
- Solving problems: identifying, defining and assessing problems, taking action to address them; finding the information needed to solve problems; making objective judgments based on all the facts available.
- Learning and sharing knowledge: sharing knowledge and expertise freely and willingly with others; coaching others to ensure knowledge transfer; proposing ways to improve or streamline existing procedures, processes and methodologies.
The language competencies required for this post are:
- Spoken and written English or French: ability to draw-up technical specifications and/or scientific reports and to make oral presentations in at least one of the two languages.
Eligibility and closing date
Employing a diverse and international workforce is a CERN core value and central to our success. We welcome applications from all Member States irrespective of gender, age, disability, sexual orientation, race, religion or personal situation.
This vacancy will be filled as soon as possible, and applications should normally reach us no later than 13.09.2017.
By applying here, you allow CERN to consider your application for any position it considers relevant with respect to your profile. Please ensure you update your profile regularly with any relevant information and that you inform the recruitment service if you wish your file to be removed from the database.
Note on Employment Conditions
We offer a limited-duration contract for a period of 5 years. Limited-duration contracts shall terminate by default on their date of expiry.
Subject to certain conditions, holders of limited-duration contracts may apply for an indefinite position.
These functions require:
- Participation in stand-by duty, when required by the needs of the Organization.
- Work during and official holidays, when required by the needs of the Organization.
For the BE-BI-SW position, it is also required:
- Work in radiation areas.
- Interventions in underground installations.
Professional Code / Code Professionnel
BECareer Path / Filière de Carrière
Grade 6 or 7