Software Engineer (Web Applications)

Are you an experienced Software Engineer who enjoys innovative Full-stack Web Development? Take an active role in development and service management, joining a dynamic team using cutting edge technologies, for a large open source project used by thousands of users every day all around the world. Work at the heart of digital research publication and archival at the largest particle physics lab in the world. CERN, Take part!

Job Reference: IT-CDA-DR-2017-14-LD
Publication date:
Closing date:

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


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 section also develops and maintains 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.
  • DevOps activities - the configuration, deployment and maintenance activities of some Invenio-based services.
  • Providing support for Invenio-based services and the Invenio developer community.
  • The management of code contributions following an Open Source development model.
  • Possibly supervising short-term team members.


Qualification required

Master's Degree 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: very advanced knowledge of python programming, solid knowledge of JavaScript (e.g. jQuery, ES6); experience with the Flask web framework.
  • Database/Repository design: extensive experience with database management systems (PostgreSQL in particular) and object-relational mapping libraries (e.g. SQLAlchemy); .
  • Configuration management: experience building and maintaining configuration templates and parameters (OpenStack and Puppet is a plus); knowledge of container-based te.
  • Requirements definition and management.
  • Front-end development: demonstrated experience with web UI technologies; experience with toolkits such as SASS, Twitter Bootstrap and AngularJS 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:


  • Spoken and written English or French: ability to understand and speak the other language in professional contexts. Ability to draw-up technical specifications and/or scientific reports and to make oral presentations in at least one of the two languages.


Eligibility conditions

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 12.03.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:


  • 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.


Read more about employment conditions


Benchmark Job Title:
Computing Engineer
Professional Category:
Computer Scientists
Job Category:
Information Technologies
Career Level
Grade 6 or 7
Number of Posts
Duration: 5 year(s)

Application is closed for this job.