About the job Staff Software Engineer - Kernel
We are seeking a skilled and innovative Senior Kernel Engineer to help build and optimize our clients cutting-edge Software Development Kit (SDK). Our clients SDK is designed to deliver industry-leading performance and power efficiency for our clients unique at-memory AI inference chips. By enabling customers to compile AI models directly for their architecture, and providing advanced tools for performance analysis and optimization, were setting a new standard in AI inference technology.
At the core of our SDK is the kernel library, which maximizes hardware efficiency through fast computations, flexible parallel workloads, and highly configurable data-flow options. This role requires a deep understanding of our architectures strengths and constraints, and how the kernel libraries features enable seamless and performant compilations.
Key Responsibilities:
- Develop Neural Network Compute Kernels: Design and implement efficient and flexible kernels tailored for our chip families.
- Enhance Kernel Abstractions: Define and improve abstractions in our kernel library to streamline development and accelerate kernel performance.
- Optimize Performance: Conduct in-depth analysis and optimization of individual kernel and full-network implementations.
- Collaborate Cross-Functionally: Work closely with the compiler and physical allocation teams to deliver efficient, push-button compilation workflows for AI models.
Required Qualifications:
- Bachelors or advanced degree in Computer Science, Engineering, Mathematics, Physics, or a related field.
- Proficiency in Python, C/C++, and software design principles.
- Proven ability to work independently on complex, tightly constrained technical challenges.
- Demonstrated experience leading technical initiatives and collaborating with cross-functional teams.
- Strong interest and ability to balance high-level architecture considerations with detailed, low-level technical work.
- Expertise in low-level and parallel optimization techniques, including assembly language, GPU shaders, SIMD, CUDA, or AI inference accelerator kernels.
Preferred Qualifications:
- Familiarity with spatial architectures and at-memory compute technologies.
- Knowledge of AI algorithms and neural network principles.
- Advanced mathematical skills and a passion for solving complex problems.
- Enjoy tackling challenging intellectual problems, such as tricky math puzzles or logic-based tests.
If you're excited about pushing the boundaries of performance and innovation in AI inference, we'd love to hear from you!