Job Description
Your role
ECMWF is recruiting a motivated Research Software Engineer (A2) to contribute to the development, maintenance and evolution of our core data encoding and decoding capabilities. You will be part of a dynamic team of scientific software engineers who contribute to key activities at ECMWF.
At ECMWF, you will join a passionate community working to bring novel technology and science to the cutting edge of numerical weather prediction. In this role, you will focus on software, algorithms and workflows for handling meteorological, climate and geoscientific data formats. There will be a strong emphasis on the WMO formats GRIB and BUFR, as well as other widely used scientific formats such as NetCDF. This work will include leading the development of key ECMWF libraries and tools, notably the open-source package ecCodes, and contributing to software packages that handle meteorological data. You will help ensure that ECMWF and its Member and Co-operating States continue to benefit from robust, efficient and sustainable software for handling operational and research data across a range of meteorological and environmental workflows.
You will contribute to both the reliability of production-quality software and the longer-term evolution of ECMWFâs data-handling capabilities, helping to meet the needs of internal users, external partners, and the wider meteorological community. You will work closely with colleagues across software engineering, data governance and scientific development teams, and also with technical representatives of other organisations such as our Member Statesâ meteorological services.
The role sits in the Foundational Software Services team in the Development Section in the Forecasts and Services Department. The team is responsible for fundamental software packages developed at ECMWF that handle data encoding, decoding, processing, and visualisation. These open-source packages are available both within and outside ECMWF and provide the foundation for numerous research and production pipelines. They also provide core functionality for the new âearthkitâ software stack, much of which is also developed within this team. Earthkit modernises and harmonises data handling, enabling efficient data access, analysis, and visualisation, and directly supporting many workflows, including ECMWFâs machine learning developments. The team is additionally responsible for workflow software and the CI/CD systems used throughout ECMWFâs software development lifecycle.
Your responsibilities
- Develop, maintain and enhance ECMWF software libraries and tools for encoding and decoding meteorological and environmental data.
- Support and improve workflows involving relevant data formats with attention to correctness, performance and usability.
- Work with scientists, analysts and software developers from ECMWF and its Member States to understand requirements and translate them into robust technical solutions.
- Use and contribute to software engineering best practices, including version control, code review, automated testing, continuous integration and release processes.
- Prepare technical documentation and guidance for users and developers.
- Investigate and resolve relevant issues reported by users and collaborators.
- Where relevant, contribute to community engagement, user support and collaboration with external partners and standards bodies.
About ECMWF
The European Centre for Medium-Range Weather Forecasts (ECMWF) is a world leader in Numerical Weather Predictions providing high-quality data for weather forecasts and environmental monitoring. As an intergovernmental organisation we collaborate internationally to serve our members and the wider community with global weather predictions, data and training activities that are critical to contribute to safe and thriving societies.
The success of our activities depends on the funding and partnerships of our 35 Member and Co-operating States who provide the support and direction of our work. Our talented staff together with the international scientific community, and our powerful supercomputing capabilities,â¯are the core of a 24/7 research and operational centre with a focus on medium and long-range predictions. We also hold one of the largest meteorological data archives in the world.
Our vision: World-leading monitoring and predictions of the Earth system enabled by cutting-edge physical, computational and data science, resulting from a close collaboration between ECMWF and the members of the European Meteorological Infrastructure, will contribute to a safe and thriving society
Our mission: Deliver global numerical weather predictions focusing on the medium-range and monitoring of the Earth system to and with our Member States
In addition, ECMWF has established a strong partnership with the European Union and has been entrusted with the implementation and operation of the Destination Earth initiative and the Climate Change and Atmosphere Monitoring Services of the Copernicus Programme, as well as being a contributor to the Copernicus Emergency Management Service. Other areas of work include High Performance Computing and the development of digital tools that enable ECMWF to extend provision of data and products covering weather, climate, air quality, fire and flood prediction and monitoring.â¯
ECMWF is a multi-site organisation, with its headquartersâ¯in Reading, UK, a data centre in Bologna, Italy, and a large presence in Bonn, Germany as a central location for our EU-related activities.â¯ECMWF is internationally recognised as the voice of expertise in numerical weather predictions for forecasts and climate science.
More about us: | |
Your responsibilities
- Develop, maintain and enhance ECMWF software libraries and tools for encoding and decoding meteorological and environmental data.
- Support and improve workflows involving relevant data formats with attention to correctness, performance and usability.
- Work with scientists, analysts and software developers from ECMWF and its Member States to understand requirements and translate them into robust technical solutions.
- Use and contribute to software engineering best practices, including version control, code review, automated testing, continuous integration and release processes.
- Prepare technical documentation and guidance for users and developers.
- Investigate and resolve relevant issues reported by users and collaborators.
- Where relevant, contribute to community engagement, user support and collaboration with external partners and standards bodies.
What we are looking for
Excellent analytical and problem-solving skills with a proactive, continuous improvement approach.
Ability to analyse complex technical problems and deliver reliable, maintainable solutions.
Ability to work effectively both independently and as part of an international, multidisciplinary team.
Ability to explain complex technical concepts to users and collaborators.
Passion for delivering technical solutions that have a real-world impact
Dedication, passion, and enthusiasm to succeed both individually and across teams of developers.
Highly organised with the capacity to work on a diverse range of tasks to tight deadlines.
Your profile
- Candidates should have an advanced university degree (EQ7 level or above) or equivalent experience in computer science or engineering, computational science, physics or natural sciences, mathematics, or a related discipline.
Required or highly desirable experience and skills
- Proven experience in developing and maintaining scientific or technical software in a collaborative environment.
- Strong programming skills in one or more relevant languages such as C, C++, Python or Rust.
- Experience with software engineering practices such as testing, debugging, version control and continuous integration.
- Knowledge of data encoding/decoding concepts, metadata models, schemas, validation and data conversion workflows.
- Experience working with structured scientific or technical data formats and metadata, especially WMO formats such as GRIB and BUFR. Knowledge of NetCDF would be an advantage.
- Experience of working with developers and users to gather feedback and plan developments.
- Experience of working and scripting in UNIX environments.
- Candidates must be able to work effectively in English. Knowledge of one of the Centreâs other working languages (French or German) would be an advantage.
Desirable experience and skills
- Knowledge of software lifecycle maintenance.
- Familiarity with performance, memory and scalability considerations in data-processing software.
- Experience in developing cross-platform libraries, command-line tools or APIs for technical users.
- Experience in contributing to large-scale software projects, preferably open-source and/or involving multiple software components.
- Experience with ECMWF or comparable software libraries and tools for working with scientific or meteorological data, such as ecCodes.
- Familiarity with data compression algorithms.
- Experience supporting users through documentation, issue triage, training or technical guidance.
- Ability to work effectively with legacy code while contributing to modernisation and long-term maintainability.
You are very welcome to apply even if you don't feel you precisely meet all the requirements listed above but think your profile and experience would make you a great fit for this role.
Other information
Grade remuneration: The successful candidates will be recruited according to the scales of the Co-ordinated Organisations. Details of salary scales and allowances are available on the ECMWF website at .
Starting date:⯠as soon as possible.
Candidates are expected to relocate to the duty station, either Bonn, Germany, or Reading, UK. As a multi-site organisation, ECMWF has adopted a hybrid organisation model which allows flexibility to staff to mix office working and teleworking, including away from the duty station (within the area of our member states and co-operating states).
Interviews by videoconference (MS Team) are expected to take place shortly after the vacancy closing date.
Successful applicants and members of their family forming part of their households will be exempt from immigration restrictions.
Who can apply
Applicants are invited to complete the online application form by clicking on the apply button below.
At ECMWF, we consider an inclusive environment as key for our success. We are dedicated to ensuring a workplace that embraces diversity and provides equal opportunities for all, without distinction as to race, gender, age, marital status, social status, disability, sexual orientation, religion, personality, ethnicity and culture. We value the benefits derived from a diverse workforce and are committed to having staff that reflect the diversity of the countries that are part of our community, in an environment that nurtures equality and inclusion.
Applications are invited from nationals from ECMWF Member States and Co-operating States. Applications from nationals from other countries may be considered in exceptional cases.
ECMWF Member States and Co-operating States are: Austria, Belgium, Bulgaria, Croatia, Czech Republic, Denmark, Estonia, Finland, France, Georgia, Germany, Greece, Hungary, Iceland, Ireland, Israel, Italy, Latvia, Lithuania, Luxembourg, Montenegro, Morocco, the Netherlands, Norway, North Macedonia, Portugal, Romania, Serbia, Slovakia, Slovenia, Spain, Sweden, Switzerland, Türkiye and the United Kingdom.