Full-Stack Software Engineer (RCS-SIS-TS-2024-115-LD)

CERN - European Organization for Nuclear Research

Open positions at CERN
Logo of CERN

Company Description

At CERN, the European Organization for Nuclear Research, physicists and engineers are probing the fundamental structure of the universe. Using the world's largest and most complex scientific instruments, they study the basic constituents of matter - fundamental particles that are made to collide together at close to the speed of light. The process gives physicists clues about how particles interact, and provides insights into the fundamental laws of nature. Find out more on http://home.cern.

Job Description

Introduction

Are you a skilled Full-Stack software engineer, mastering Python and JavaScript, who thrives in an agile, self-organised team environment? Join our talented team and contribute to software, tools, and services for the Open Science community. CERN, take part!

You will join the Research and Computing Sector, where the Scientific Information Services supports scientists at CERN and beyond to find the information they need. The Scientific Information Service develops a range of tools & services for the benefit of CERN researchers and experiments as well as the global particle physics community.

Functions

As a Full-Stack Software Engineer, you will join a dynamic and self-organised agile team, contributing to the development and support of critical software solutions. Specifically, you will undertake the following responsibilities:

  • Plan, manage, and architect projects, ensuring alignment with business priorities, objectives, and timelines set by the Product Owners. Develop innovative solutions for new services that meet scalability requirements and support long-term business goals;
  • Design, develop, and rigorously test new features within existing services to enhance functionality and performance across all layers of the application stack;
  • Provide essential support for legacy systems, leveraging expertise to resolve complex technical issues and ensure seamless operation, and facilitate transitions to modern technologies;
  • Mentor junior engineers, fostering their professional growth and ensuring high standards of software engineering practices;
  • Collaborate effectively with external partners and suppliers, facilitating seamless integration and maximising project outcomes;
  • Work closely with senior engineers to ensure adherence to best practices and maintain high standards of software development excellence.

Qualifications

Master's degree or equivalent relevant experience in the field of computer science, software engineering or a related field.

Experience:

Required experience:

  • Proficiency in JavaScript, with extensive experience with JavaScript frameworks, especially ReactJS;
  • Experience with Python programming and knowledge of Django framework;
  • Demonstrated experience of modern software design and architecture principles and patterns, and their application in the Python and JavaScript ecosystem;
  • Hands-on experience in building and delivering production-ready services and applications;
  • Knowledge of designing and implementing RESTful APIs and integrating third-party APIs;
  • Familiarity with CI/CD pipelines and tools to ensure efficient and reliable software delivery;
  • Experience in creating and executing unit tests, integration tests, and end-to-end tests using tools like Cypress and Jest.

Desired experience:

  • Experience with Angular or NextJS for server-side rendering and static site generation;
  • System configuration tools, such as container-based technologies and configuration platforms (e.g. Docker, OpenShift, Kubernetes);
  • Exposure to OpenSearch for data indexing and search capabilities.

Technical competencies:

  • Conceptualising, designing and developing user experiences and interfaces;
  • Knowledge and application of software life-cycle tools and procedures;
  • Knowledge of programming techniques and languages: JavaScript (e.g. ReactJS), Python (e.g. Django);
  • Re-use, refactoring, integration and porting of existing software: working effectively with legacy code through continuous improvement, refactoring, and technology migration.

Behavioural competencies:

  • Achieving results: driving work / projects along and seeing them through to their conclusion; taking appropriate corrective actions and adapting work / project plans if necessary.
  • Communicating effectively: expressing opinions, ideas and suggestions with conviction and in a logical/structured manner; keeping to the point; demonstrating a pro-active approach to resolving differences; addressing issues of conflict constructively; giving praise and providing honest and constructive feedback.
  • Managing self: taking initiative beyond regular tasks and making things happen; working well autonomously; taking on activities and tasks without prompting.
  • Learning and sharing knowledge: thinking "out of the box" and proposing fresh ideas, insights and methodologies; actively pursuing own personal and professional development.
  • Solving problems: anticipating obstacles; assessing alternative solutions in order to have a fall-back plan; being open to original ideas and creative options by which to address issues; continually driving change by seeking new ways to improve outcomes; testing solutions for long-term suitability, cross-checking with all concerned before implementation.

Language skills:

  • Spoken and written English in professional contexts as well as the ability to draft texts for publications and/or official communications and to make oral presentations.
  • Knowledge of French would be an advantage, or a strong willingness to quickly acquire proficiency in the French language.

Additional Information

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 September 8, 2024 by 23:59.

Employment Conditions

Contract type: Limited duration contract (5 years). Subject to certain conditions, holders of limited-duration contracts may apply for an indefinite position.

Job grade: 6-7

Job reference: RCS-SIS-TS-2024-115-LD

Benchmark Job Title: Computing Engineer

Added 3 hours ago - Updated 3 hours ago - Source: careers.cern