Scientific Data Engineer

ALBA Synchrotron
Municipality of Cerdanyola del Vallès, Spain
23 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English, Spanish
Experience level
Intermediate

Job location

Municipality of Cerdanyola del Vallès, Spain

Tech stack

C
Java
Artificial Intelligence
Data analysis
Computer Vision
Automation of Tests
C++
Configuration Management
Computer Programming
Databases
Continuous Integration
Data Reduction
Data Visualization
DevOps
Graphical User Interface
Java GUIs
Python
Machine Learning
Meta-Data Management
Object-Oriented Software Development
Open Source Technology
Oop Languages
Software Engineering
Rust
Data Logging
Data Processing
High Performance Computing
Gpu Programming
Containerization
Information Technology
Data Management
Data Pipelines
Docker

Job description

ALBA is the Spanish synchrotron light source, a large research infrastructure operating ten beamlines, complementary facilities, and an Electron Microscopy Center, this last in partnership with other institutions. Currently constructing multiple more beamlines, expanding the Electron Microscopy Center, and integrating advanced data analytics, it sums up a wide range of infrastructures geared toward finding solutions to societal challenges.

Located in Cerdanyola del Vallès (Barcelona, Catalonia, Spain), it is funded by the Spanish Government (Ministerio de Ciencia e Innovación) and the Catalan Government (Generalitat de Catalunya, Departament de Recerca i Universitats). The synchrotron light produced by 3 GeV electrons is used by thousands of researchers to analyse and understand the properties and functionality of matter, spanning a wide variety of fields, such as catalytic research, health, energy production/storage, environmental research, communication technologies, or cultural heritage.

Our highly motivated staff works in a multidisciplinary work environment with an atmosphere formed by lived diversity, inclusion and respect for our colleagues. One of the goals of our gender equality plan is to reach parity within the Consortium's different divisions and offices, and several actions have been taken to encourage applications from women mostly in scientific, engineer and technical job positions.

Located close to Barcelona in a natural park and well connected by car and public transportation, with excellent connectivity to the world and an employer who understands the importance of life-work balance.

Facing an upgrade to ALBA II, a 4th generation facility, which will increase dramatically brightness and coherent flux, ALBA is in a phase of growth and dynamics. Being a part of the ALBA team will promote your career and will give you the opportunities to explore new territories.

For more information, you can take a look on our history watching this video:

https://www.youtube.com/watch?v=gHMqiH4qBAo Tasks

The Scientific Data Management (SDM) section addresses the facility's needs for scientific data processing and management, ensures data compliance in future implementations, and aligns them with current data policy and FAIR principles. This is accomplished in close collaboration with other groups of the Computing Division responsible for beamline control, data acquisition, databases and IT systems infrastructure administration. The section is strongly oriented to give close support to Experiments Division (without limiting occasional support to other Divisions) in the following aspects:

  • Scientific data processing/analysis software

  • Data pipelines development and optimization

  • Data formats, data analysis, data reduction after experiment acquisition

  • Post-processing visualization tools and workflow engines

  • Metadata management and ontology

We are looking for a software engineer eager to learn and take on new challenges while contributing to the development of software related to data processing for the different ALBA user communities. The engineer will work in collaboration with scientists and members of the Computing division to ensure the correct processing, storage, and delivery of the data and metadata generated in the different beamlines.

The successful candidate will work in technical areas such as:

  • Developing software for scientific data processing/analysis.

  • Carrying out the development and optimization of data pipelines.

  • Producing data formats, data analysis, and data reduction after experiment acquisition.

  • Developing post-processing visualization tools and workflow engines.

  • Handling metadata and ontologies for data management.

  • DevOps: automated testing, packaging and CI/CD, Configuration Management, logging and monitoring

  • And any other similar and reasonable duties and functions assigned by Management, if applicable., The merits will be accredited by means of the CV attached to the application. The selection board may require accreditation by additional documentation, originals or certified copies confirming the experience invoked in the CV.

In case of a tied final score, the position will be awarded to the person who belongs to the most underrepresented gender in the corresponding Division and subsidiarily to the overall company.

If necessary, alternates of the members of the selection board will be appointed by the president of the selection process, and the change will be published in the announcement.

The resolution of the selection procedure will be carried out within a maximum period of six months from the deadline for submitting applications for participation.

Requirements

Do you have experience in Software development?, Do you have a Bachelor's degree?, The position requires fluent English speaking and writing. We will consider candidates with a basic level of English, provided they engage with the language support provided by the consortium to reach full proficiency., * University degree in Computer Science. Final-year Computer Science students (with at least 180 ECTS completed) will be accepted and must attach their academic transcript. of Records (ToR).

Experience:

  • 3 years of working experience programming in Python, C, C++, Rust, or Java, including experience developing data processing pipelines, and integrating them with Graphical User Interfaces (GUIs), working with virtualization and containerization (e.g. Docker, Singularity), and implementing software parallelization on High-Performance Computing (HPC).

The position requires speaking and writing English equivalent to B1 level. Selection Process Development

The selection will be carried out through the competition-opposition system.

As a first phase, an analysis of the curriculum will be carried out (assessment of previous experience and / or scientific history, degree, training and other professional information relevant to the position). Career breaks or variations in the chronological order of CVs will be regarded as an evolution of a career, and consequently, as a contribution to the professional development.

The assessment of the CV in the competition phase will be scored up to 40 points, which will consider the following aspects:

  • Computer Science studies and programming experience (5 points);

  • Experience covering the following assets (total 15 points):

  • High Performance Computing (HPC) and/or GPU programming. (up to 5 points for 3 years)

  • Development and integration of scientific data analysis software or platform. (up to 5 points for 3 years)

  • AI/ machine learning, including computer vision (up to 5 points for 3 years)

  • Evaluation of personal contribution in a relevant software development (up to 20 points for Python-based project, up to 15 points for any other OOP language). The candidate must attach a brief description and, optionally, a link to source code repositories in the Publications field. For example

  1. Final Degree project

  2. Open-source projects

  3. Specific Professional Development

  4. Personal Project

The best rated candidates, at least two if possible, will be invited to an interview where the technical competence, knowledge, skills and professional experience linked to the position will be assessed, with a total score of 60 points. A minimum of 30 points must be obtained out of a total of 60 points to be eligible.

Provided they meet the minimum requirements and have ranked among the top five after the assessment of the CV phase, at least one person from the underrepresented gender in the division/office will be interviewed.

The interview will include at least:

  • Assessment of advanced proficiency in one or more of the following programming languages: Python, C, C++, Rust, or Java. With particular preference for Object-Oriented Programming in Python. (30p)

  • Presentation of professional experience (10p)

  • Auto-assessment of soft skills (10p)

  • Motivation for applying (10p)

Apply for this position