Context And Mission
The mission revolves around Alya, a high-performance computational mechanics code developed within the CASE department to solve complex coupled multiphysics/multi-scale/multi-domain problems, which are mostly coming from the engineering realm. Among the different physics solved by Alya, we can mention incompressible/compressible flows, non-linear solid mechanics, chemistry, particle transport, heat transfer, turbulence modelling, electrical propagation, etc.
For a couple of years, the development of Alya has followed a CI/CD scheme based on Gitlab tools (issues, merge requests, etc.), pipelines, and API. The complexity of the CI/CD pipeline has increased with the addition of new features, the integration of multiple third-party libraries, and the deployment of Alya on new platforms that require more “exotic” compilers or compilation options. We want to optimize the pipeline as much as possible to reduce the potential bottlenecks hindering development and preventing daily code integration. In particular, much effort will be put into optimizing the regression test framework that runs thousands of tests on various HPC platforms.
The candidate will participate in deploying and maintaining the GitLab infrastructure, i.e. the physical machines and the OpenStack virtual machines running the self-hosted GitLab server, as well as the GitLab runners executing the pipeline jobs.
The candidate will also be involved in improving the build system based on CMake and help the developers integrate new third-party libraries and extend the compilation options. Work will also focus on improving Alya's architecture and providing support for git and GitLab to the developers and the users.
Key Duties
- CI/CD management of the HPC code Alya and its tools Maintaining and optimizing the CI/CD pipeline Deploying and maintaining the Gitlab infrastructure
- System administration of the machines (physical, virtual, and cloud) hosting Gitlab and its runners
- Build system improvement and integration of third-party libraries
- Architecture design and improvement of the HPC code Alya
- Support to the users and developers using GitLab and git
Requirements
Education
- Bachelor or equivalent degree in Computer Science or another qualification provided that the candidate can justify having acquired the needed capabilities and skills for the vacancy.
Essential Knowledge and Professional Experience
- CI/CD, DevOps, Git, Gitlab
- Python, C++
- CMake, CTest
- Software design knowledge
- Clean, scalable, and maintainable code
- Please indicate in your CV your GitHub/GitLab account or any link where we can access your projects and the code you have written.
Additional Knowledge and Professional Experience
- MPI
- HPC platforms, slurm
- Web (HTML, CSS, JavaScript)
- Fortran
- Since the team is international, speaking foreign languages will be an asset.
Competences
- Rigour, autonomy, autodidactism, organizing skills, problem-solving, and interaction skills.
Conditions
The position will be located at BSC within the CASE Department
We offer a full-time contract, a good working environment, a highly stimulating environment with state-of-the-art infrastructure, flexible working hours, extensive training plan, tickets restaurant, private health insurance, fully support to the relocation procedures
- Duration: Open-ended contract due to technical and scientific activities linked to the project and budget duration
- Salary: we offer a competitive salary commensurate with the qualifications and experience of the candidate and according to the cost of living in Barcelona
- Starting date: asap - October
Similar Positions
-
55199 Dev Ops Engineer Plant & Food Research, Plant & Food Research, New Zealand, about 19 hours ago
DevOps Engineer Technology Services: Finance, Information and Infrastructure Auckland or Te Puke Vacancy number: 55199 Permanent fulltime (38 hours per week) Plant and Food are seeking a talented ...
-
Senior Data Engineer Research Data Platform, AcademicTransfer, Netherlands, about 1 hour ago
The goal of the Research Data Infrastructure Lab (RDI Lab) is to support our university's academics throughout the research life-cycle, with means and expertise required for them to design and mat...
-
Data Engineer Research Data Platform, Eindhoven University of Technology, Netherlands, about 22 hours ago
Position Non academic staff (supporting staff) Irène Curie Fellowship No Service(s) Library and Information Services Reference number V81.7394 Job description The goal of the Research Data Infrast...
-
Job Opportunity: Data Scientist, Azra Ai, Franklin, Tn, Vanderbilt University, United States, about 23 hours ago
Posted by hagansa2 on Friday, March 29, 2024 in Job Opportunities . Do you want to be a part of something purposeful, something bigger than yourself? Are you looking to appl...
-
Python Developer And Geodata Processing Engineer , ETH Zurich, Switzerland, about 8 hours ago
80%-100%, Zurich, fixed-term The Institute of Cartography and Geoinformation at ETH Zurich is responsible for the development of the national Atlas of Switzerland on behalf of the federal governm...
-
Research Software Engineer (0.8 1.0 Fte), University of Groningen, Netherlands, 13 days ago
Would you like to contribute to the quality of academic research at the University of Groningen (UG)? Do you have affinity with research software management and engineering, and do you have a back...