Senior LLVM Compiler Backend Engineer
We are seeking an experienced and highly skilled Senior LLVM Compiler Backend Engineer to join our team. In this role, you will be responsible for developing and optimizing the compiler backend for our Parallel Processing Unit. You will work on a variety of tasks that require a deep understanding of computer and CPU architectures, LLVM IR, and the LLVM backend infrastructure.
Key Responsibilities:
- Design, implement, and optimize compiler backend components.
- Work with LLVM IR, SelectionDAG, instruction selection, scheduling, register allocation, and machine code level optimizations.
- Develop and maintain support for RISC-V and possibly for other CPU architectures.
- Collaborate with cross-functional teams to integrate and enhance compiler features.
- Perform code reviews, debugging, and testing to ensure high-quality code.
- Contribute to the development of new compiler features and enhancements.
Required Qualifications:
- Solid understanding of computer architectures, such as SMP and NUMA.
- Good understanding of CPU architectures, including instruction level parallelism, out-of-order execution, speculative execution, cache coherency, and cache lines.
- Understanding of SIMD and vector extensions.
- Proven experience with RISC-V.
- Solid understanding of LLVM IR.
- Proven experience with the LLVM backend infrastructure, including SelectionDAG, instruction selection, scheduling, register allocation, and machine code level optimizations and transformations.
Preferred Qualifications:
- Experience with LLVM optimization/analysis passes.
- Familiarity with auto-vectorization in LLVM.
- Understanding of LLVM ScalarEvolution.
- Experience with MLIR.
- Familiarity with VLIW.
- Knowledge of ARM or x86 architectures.
- Knowledge of GlobalISel.
Location: Oulu, Finland, or remote preferably in Europe.
About Us: We are a deep-tech startup company at the forefront of innovation, committed to advancing the field of parallel computing. Our team is dedicated to developing a cutting-edge CPU extension and pushing the boundaries of what’s possible. We are looking for a Senior LLVM Compiler Backend Engineer to join our dynamic team and contribute to our mission.
Why Join Us:
- Work on groundbreaking projects with a team of industry experts.
- Competitive salary and comprehensive benefits package.
- Opportunities for professional growth and development.
- Collaborative and inclusive work environment.
- Flexible working hours and remote work options.
How to Apply: If you are passionate about compiler technology and meet the qualifications listed above, we would love to hear from you. Please submit your resume and a cover letter detailing your experience and why you are a good fit for this role to: