Software Engineer, Staff - SIMD Kernels
d-Matrix · Santa Clara, CA · Yesterday
HybridEngineeringFull-time
The Role
Software Engineer, Staff - SIMD Kernels
About the role
We are looking for a Software Engineer, Staff - SIMD Kernels who will help productize the software stack for our AI compute engine. You will develop, enhance, and maintain software kernels for ML operators such as softmax, layer norm, and activation functions for next-generation AI hardware.
Responsibilities
- Develop, enhance, and maintain software kernels for ML operators
- Build solutions that make our SDK intuitive for developers to use and analyze performance
- Deliver and scale high-quality software quickly in a fast-moving development environment
- Map algorithms and AI-framework computational graphs onto modern hardware architectures
- Work across the full toolchain and navigate hardware-software co-design trade-offs
Requirements
- MS or PhD in computer engineering, math, physics, or a related degree with 5+ years of industry experience
- Strong grasp of computer architecture, data structures, system software, and machine learning fundamentals
- Proficient in C/C++ and Python development in Linux environment and using standard development tools
- Experience in implementing algorithms in C/C++ and Python
- Experience in implementing algorithms for specialized hardware such as FPGAs, DSPs, GPUs, AI accelerators using libraries such as CUDA, etc.
- Experience in implementing operators commonly used in ML workloads—GEMMs, Convolutions, softmax, layer normalization, pooling, etc.
- Self-motivated team player with a strong sense of ownership and leadership
Qualifications
- Experience building software kernels for modern hardware architectures
- Experience in implementing algorithms for specialized hardware such as FPGAs, DSPs, GPUs, AI accelerators using libraries such as CUDA, etc.
- Experience in implementing operators commonly used in ML workloads—GEMMs, Convolutions, softmax, layer normalization, pooling, etc.
- Experience with ML frameworks such as TensorFlow and/or PyTorch
- Experience working with ML compilers and algorithms, such as MLIR, LLVM, TVM, Glow, etc.
- Experience with a deep learning framework (such as PyTorch or TensorFlow) and ML models for CV, NLP, or recommendation
- Experience developing for embedded SIMD vector processors such as Tensilica
- Work experience at a cloud provider or AI compute/subsystem company