LLVM Software Engineer
Role details
Job location
Tech stack
Job description
The Computer Sciences (CS) department of the Barcelona Supercomputing Center is participating in different projects around the RISC-V ecosystem and HPC. We are looking for a software engineer that wants to push forward this ecosystem by implementing support for vector support, OpenMP and loop transformations and other features that can speed-up typical HPC applications when running on RISC-V. Key Duties
- Develop compiler analyses and transformations that push forward the state of the LLVM loop transformations with a focus on RISC-V and HPC applications.
- Extend the OpenMP target model for environments with several devices.
- Synchronise and collaborate with upstream LLVM/Clang to the extent possible and contribute if there is interest in the LLVM community for the implemented features., * A cover/motivation letter with a statement of interest in English, clearly specifying for which specific area and topics the applicant wishes to be considered. Additionally, two references for further contacts must be included. Applications without this document will not be considered.
Development of the recruitment process
The selection will be carried out through a competitive examination system ("Concurso-Oposición"). The recruitment process consists of two phases:
- Curriculum Analysis: Evaluation of previous experience and/or scientific history, degree, training, and other professional information relevant to the position. - 40 points
- Interview phase: The highest-rated candidates at the curriculum level will be invited to the interview phase, conducted by the corresponding department and Human Resources. In this phase, technical competencies, knowledge, skills, and professional experience related to the position, as well as the required personal competencies, will be evaluated. - 60 points. A minimum of 30 points out of 60 must be obtained to be eligible for the position.
The recruitment panel will be composed of at least three people, ensuring at least 25% representation of women.
In accordance with OTM-R principles, a gender-balanced recruitment panel is formed for each vacancy at the beginning of the process. After reviewing the content of the applications, the panel will begin the interviews, with at least one technical and one administrative interview. At a minimum, a personality questionnaire as well as a technical exercise will be conducted during the process.
The panel will make a final decision, and all individuals who participated in the interview phase will receive feedback with details on the acceptance or rejection of their profile.
At BSC, we seek continuous improvement in our recruitment processes. For any suggestions or comments/complaints about our recruitment processes, please contact recruitment [at] bsc [dot] es. For more information, please follow this link.
Requirements
- Bachelor or Master degree in Computer Science.
- Essential Knowledge and Professional Experience
- Good skills in C++.
- Experience in compiler development.
- Knowledge of LLVM codebases
- Additional Knowledge and Professional Experience
- Good knowledge of Linux low level interfaces would be a plus.
- Knowledge of HPC architectures and systems would be a plus.
- Competences
- Have good communication and interpersonal skills to be able to work within a team to complete tasks on schedule.
- Show a problem-solving, can-do, pro-active and result-oriented attitude.
- Be keen to deliver good quality code and follow good practices in the industry.
- Be curious and willing to learn about LLVM, OpenMP, RISC-V and HPC.
Benefits & conditions
- The position will be located at BSC within the Computer Sciences Department
- We offer a full-time contract (37.5h/week), a good working environment, a highly stimulating environment with state-of-the-art infrastructure, flexible working hours, extensive training plan, restaurant tickets, private health insurance, support to the relocation procedures
- Duration: Open-ended contract due to technical and scientific activities linked to the project and budget duration
- Holidays: 22 days of holidays + 6 personal days + 24th and 31st of December per our collective agreement
- 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