About this role
What You Will Do
- Own performance of Falcon for a set of workloads or an optimization area end to end: analysis, design, implementation, validation
- Design and implement new optimizations and improve existing ones in the middle end and back end: inlining heuristics, loop optimizations, vectorization, escape analysis, speculation and deoptimization, GC barrier and runtime call optimization
- Drive code generation quality on x86_64 and AArch64, including bringing Falcon to new hardware platforms
- Investigate complex performance issues reported by customers and turn findings into compiler improvements
- Review code, mentor engineers on the team and raise the bar for performance methodology
- Contribute to upstream LLVM where it makes sense
Minimum Requirements
- 5+ years of professional experience developing optimizing compilers or JIT compilers
- Strong C++ design and coding skills in large codebases
- Proven track record of delivering compiler optimizations with measurable performance impact
- Deep knowledge of compiler optimization theory and its practical tradeoffs: compile time, code size, correctness
- Strong performance analysis skills: profilers, hardware counters, reading and reasoning about generated assembly
Nice to Have
- Significant experience with LLVM optimization passes or code generation; LLVM commit access is a plus
- Experience with JIT compilers for managed languages: HotSpot C2, Graal, V8, .NET RyuJIT or similar
- Deep knowledge of x86_64 and/or AArch64 microarchitecture
- Experience with JVM internals: garbage collection, deoptimization, profiling
- PhD in Computer Science or significant research experience in compilers