Software Engineer (Web Applications)

05 Dec 2017
End of advertisement period
09 Jan 2018
Contract Type
Fixed Term
Full Time


Software Engineer (Web Applications) in the Information Technology (IT) Department, Collaboration, Devices & Applications (CDA) Group, Digital Repositories (DR) Section.

You will join:

The Digital Repositories (DR) Section which is responsible for activities related to archival, preservation and dissemination of CERN's research. DR leads the development of Invenio, an Open Source Digital Library Framework that is used at CERN, and world-wide by many partners, in order to run services like Institutional Repositories, Integrated Digital Libraries, Research Data Repositories and Multimedia Archives.  DR also develops and maintains many Invenio-based projects like the CERN Document Server (CDS) - CERN's institutional repository (archiving articles, data, photos, videos, audio, etc) and collaborates in several cross-CERN projects (e.g. CERN Open Data Portal and CERN Analysis Preservation) and EU projects (e.g. OpenAIRE/Zenodo and EUDAT/B2Share).

More information on the Department is at:


As a Software Engineer in the DR section, you will be involved in:

  • The development of new modules and functionalities for the Invenio Digital Library Framework and related services.
  • DevOps activities - the configuration, deployment and maintenance activities of some Invenio-based services.
  • Providing support for Invenio-based services and Invenio developer community.
  • The management of code contributions following an Open Source development model.
  • Possibly supervising short-term team members.


Master's degree or equivalent relevant experience in the field of Computer Science, or equivalent.

Experience and competencies

The experience required for this post is:

  • Demonstrated experience with the full-stack development of large software projects, preferably for the web, involving design and development of user interfaces, web application back-ends, front-ends and database schema management.
  • Experience with user relations, user support, user training, user requirements definition.
  • Experience in service deployment, configuration management and operation.

The technical competencies required for this post are:

  • Programming/Software development: Python programming, JavaScript (e.g. jQuery, ES6); Flask web framework/open source is a plus.
  • Database/Repository design: database management systems (PostgreSQL), object-relational mapping libraries; Elasticsearch and Redis is a plus.
  • Configuration management: building/maintaining configuration templates & parameters (OpenStack, Puppet is a plus); container-based technologies (e.g. Docker) is a plus.
  • Requirements definition and management.
  • Front-end development: demonstrated experience with web UI technologies; experience with toolkits such as SASS, Twitter Bootstrap and AngularJS (or similar) is a plus; knowledge of user experience and usability practices.

The behavioural competencies required for this post are:

  • Achieving results: delivering high quality work on time and fulfilling expectations; delivering prompt and efficient service taking into account customer needs.
  • Solving problems: identifying, defining and assessing problems, taking action to address them; producing workable and timely solutions that meet requirements; testing solutions for long-term suitability, cross-checking with all concerned before implementation.
  • Working in teams: contributing to promoting a positive atmosphere in the team through an optimistic and constructive attitude; addressing issues; supporting and acting in accordance with team decisions; accepting joint responsibility for team successes and shortcomings.
  • Communicating effectively: delivering presentations in a structured and clear way; adjusting style and content to the audience; responding calmly and confidently to questions.
  • Learning and sharing knowledge: sharing knowledge and expertise freely and willingly with others; coaching others to ensure knowledge transfer.

The language competencies required are:

  • Good knowledge of English is required.
  • Basic knowledge of French or an undertaking to acquire it rapidly.

Eligibility and closing date

Diversity has been an integral part of CERN's mission since its foundation and is an established value of the Organization. Employing a diverse workforce is central to our success.

We welcome applications from all Member States and Associate Member States.

This vacancy will be filled as soon as possible, and applications should normally reach us no later than 09.01.2018.

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:

  • Stand-by duty, when required by the needs of the Organization.
  • Work during nights, Sundays and official holidays, when required by the needs of the Organization.