LLVM Back-end Engineer
Chennai, India · Full-time
- Posted 1mo ago
- From MulticoreWare’s careers page
- Location
- Chennai, India
- Type
- Full-time
- Experience
- 5+ years
- Department
- Software Development
Opens the listing on multicorewareinc.zohorecruit.in
Let the right jobs find you
In your inbox every Wednesday and SaturdayPersonalised suggestions from verified career pages, matched to your role, location, level and skills.
About the role
Job Description
We are looking for an experienced LLVM Backend Engineer to design and implement backend components of the compiler toolchain. The role focuses on building and optimizing the code generation flow targeting a custom or existing hardware architecture. The candidate will work on LLVM IR transformations, instruction selection, and target-specific optimizations to deliver high-performance, efficient compiled code.
Responsibilities:
- Develop and maintain the LLVM backend for a custom or existing target architecture.
- Implement and extend instruction selection, register allocation, scheduling, and code emission.
- Design and implement IR-level optimization passes to improve performance, memory efficiency, and code quality.
- Work on LLVM middle-end transformations and optimizations.
- Analyze and tune generated assembly/code quality for performance bottlenecks.
- Collaborate with hardware teams to ensure architectural features are fully leveraged by the compiler backend.
- Contribute to internal LLVM forks or upstream where applicable.
Requirements
Education:
BTech/BE/MTech/ME/MS/PhD in Computer Science, Computer Engineering, Electronics/ECE, or a related field.
Technical Skills (Must haves):
- Strong C/C++ programming skills and solid understanding of compiler fundamentals.
- Hands-on experience with LLVM, LLVM IR, and backend/code-generation components.
- Understanding of instruction selection, register allocation, instruction scheduling, and code emission.
- Experience with compiler optimizations and performance/code-quality analysis.
Need to have (Can be bridged):
- Experience developing or modifying LLVM backend components for a target architecture.
- Knowledge of IR-level and middle-end transformations and optimization passes.
- Ability to analyze generated assembly and identify performance bottlenecks.
Good to have (Not essential):
- Experience with custom hardware architectures, accelerators, CPU/GPU/DSP/FPGA targets, or domain-specific architectures.
- Experience contributing to upstream LLVM or maintaining an internal LLVM fork.
- Familiarity with compiler testing, benchmarking, and performance tuning workflows.
Preferred Qualifications (Optional):
- Experience collaborating closely with hardware/architecture teams and translating architectural features into compiler support.
Skills they ask for
Pick one to see other roles that ask for it.
About MulticoreWare
Accelerated software development companyMulticoreWare is an accelerated software development company with products in broadcast, OTT, autonomous vehicles and video analytics.
See all 11 roles at MulticoreWareMore roles at MulticoreWare
See all 11- Algorithms & Optimization EngineerChennaiEngineeringChennai, India1mo
- AI/DSP Kernel Optimization EngineerChennaiSoftware DevelopmentChennai, India1mo
- Algorithms & Optimization FPGA EngineerChennaiEngineeringChennai, India1mo
- LLVM EngineerChennai · Entry LevelSoftware Development · Entry LevelChennai, India1mo
Let the right jobs find you
In your inbox every Wednesday and SaturdayPersonalised suggestions from verified career pages, matched to your role, location, level and skills.