|JuliaCortRecruiting: Search Results|
|Back to record list|
|Record 4 of 8|
|Job Title:||LLVM Compiler Engineer|
|Perm or Contract:||Permanent|
|Location:||San Diego, CA|
|Skills:||compiler, LLVM, ARM, code generation, machine dependent optimizations|
|Job Description:|| Seeking talented and experienced compiler engineers to optimize LLVM for our ARM-based SoC solutions. The work involves close collaboration other LLVM teams as well as the general LLVM community.|
This role requires the following essential duties and responsibilities:
- Research, design, develop, enhance, and implement the different components of compiler based on performance and code-size needs of the customer workload/benchmark.
- Analyze software requirements, determine the feasibility of design within the given constraints, consult with architecture and HW engineers, and come up with software solutions best suited for our SOCs.
- Develop and execute benchmark and test scenarios for standalone static compilers.
- Analyze and identify system level integration issues, interface with the software development, integration and test teams.
- Follow our open source design practices
- Experience in compiler development - intermediate representations, machine independent and machine dependent optimizations, code generation and processor specific optimizations..
- Working knowledge of assemblers, linkers, loaders, object file formats, instruction set simulators, debuggers and experience using them.
- Knowledge of the structure and function of the compiler internals.
- Knowledge of instruction sets and computer architectures - pipeline structure & hazards, cache & memory organization, etc.
- Strong experience in performance analysis, root cause analysis and profiling tools.
- Strong background in embedded software development, experience in assembly language programming and optimization and analyzing compiler generated code for optimization/code generation opportunities.
Skills/Experience - 5 to 10 years of programming experience in C/C++.
- Should have exposure to large scale software build, integration and test environments
- Strong communication and interpersonal skills required
- LLVM or any industrial strength compiler development experience is a plus.
- ARM architecture knowledge and ARM assembly code optimization experience is a plus
- Familiar with scripting languages used in build systems and hands-on experience on debugging embedded systems preferred.
Education Requirements Required: Master's, Computer Engineering and/or Computer Science + 5 years of relevant industry experience
Preferred: Doctorate, Computer Engineering and/or Computer Science