We are looking for an experienced Tech Lead to lead the design and development of compiler and software infrastructure for modern AI workloads and heterogeneous ML accelerators.
In this role, you will provide technical leadership across compiler infrastructure, optimization, and AI software stack, driving solutions from architecture and design through implementation, validation, and production deployment. You will work closely with compiler engineers, runtime engineers, hardware architects, and ML framework/model teams to enable new accelerator capabilities and deliver high-performance, production-quality software.
The ideal candidate has 8+ years of software engineering experience, a strong foundation in C++, compilers, systems, or performance engineering, and demonstrated experience leading technical projects and mentoring engineers. Experience with AI/ML compilers, GPUs, or custom accelerators is highly desirable.
Responsibilities
- Lead the technical direction and architecture of compiler and AI software components for ML accelerators.
- Design, implement, and optimize compiler passes and transformations across IR, graph, and backend layers.
- Drive key compiler capabilities such as graph lowering, operator fusion, scheduling, memory planning, code generation, and hardware-specific optimizations.
- Own complex technical problems end-to-end, from requirements and architecture through implementation, performance validation, and production deployment.
- Partner closely with hardware architects and runtime teams to define software requirements and enable new hardware features.
- Analyze real-world AI/ML workloads and identify opportunities to improve performance, memory efficiency, scalability, and compiler robustness.
- Lead technical design reviews and establish engineering best practices for compiler development, testing, debugging, and performance analysis.
- Mentor and provide technical guidance to engineers, helping the team solve complex compiler and systems problems.
- Break down ambiguous or complex technical problems into actionable engineering plans and drive execution across multiple contributors.
- Debug and resolve complex functional, correctness, and performance issues across compiler, runtime, and hardware layers.
- Collaborate with ML framework and model teams to improve end-to-end workload performance and usability.
- Contribute to tooling, automation, testing infrastructure, profiling, and performance regression systems.
- Stay current with compiler technologies, AI frameworks, accelerator architectures, and emerging approaches to AI systems optimization.
Required Qualifications
- 8+ years of professional software engineering experience, with significant experience in systems, compilers, AI infrastructure, or performance-critical software.
- Bachelor’s or Master’s degree in Computer Science, Computer Engineering, or a related technical field, or equivalent practical experience.
- Strong proficiency in C++ and solid software engineering fundamentals.
- Strong understanding of data structures, algorithms, and software architecture.
- Strong technical background in one or more of the following:
- Compiler design and optimization
- Operating systems and systems software
- High-performance computing
- GPU or accelerator software
- Demonstrated experience owning and driving large or complex technical projects from design through implementation and production.
- Experience providing technical leadership and mentorship to engineers or leading a small engineering team.
- Ability to understand and navigate large, complex codebases and make architectural decisions across multiple software layers.
Preferred Qualifications
- Hands-on experience with AI/ML compiler infrastructure, such as MLIR, LLVM, XLA, TVM, or similar compiler frameworks.
- Experience with machine learning frameworks, model formats, or AI workload ecosystems such as PyTorch, TensorFlow, ONNX, or similar technologies.
- Experience with GPUs, NPUs, TPUs, or custom AI accelerators.
- Experience with parallel computing, heterogeneous computing, or accelerator programming.
- Demonstrated ability to set technical direction, make architectural trade-offs, and influence engineering decisions across multiple teams.
- Experience mentoring engineers, leading technical initiatives, and raising engineering quality and best practices within a team.
- Experience driving projects involving multiple engineers or cross-functional teams in a fast-paced development environment.