We are looking for a Senior C++ Software Engineer to join a team building the next generation of computers for artificial intelligence. The company brings together experts in computer architecture, ASIC design, advanced systems and neural network compilers, with the team focused on the compiler and neural network stack, including LLMs and CNNs. This is a key developer role within the ML & AI team.
Responsibilities
- Write kernels in C++ for various operations used across AI and ML workloads
- Develop and optimize the compiler and neural network stack supporting LLMs and CNNs
- Collaborate with experts in computer architecture, ASIC design and advanced systems to build next-generation computing solutions
- Design and implement AI/ML kernel operations tailored to GPU/AI-accelerator architectures
- Build and maintain ML models using PyTorch or TensorFlow
- Ensure kernel-level performance and correctness across modern neural network architectures such as transformers
- Take ownership of key technical decisions as a lead developer within the ML & AI team
Requirements
- 5+ years of experience in software engineering with a focus on ML/AI
- 5+ years of experience in C++ and CUDA/kernel programming
- Knowledge in GPU/AI-accelerator architectures
- Experience in building and working with ML models in PyTorch or TensorFlow
- Understanding of modern ML model architectures such as transformers
- English proficiency at B2 level or higher
Nice to have
- Proficiency in Python programming with hands-on experience in developing, training and fine-tuning deep learning models
- Skills in designing, implementing and iterating on neural network architectures to achieve optimal performance on diverse tasks
- Capability to investigate and troubleshoot model performance issues including gaps in compilation steps and kernels
- Demonstrated experience in designing, training and deploying neural networks for various applications
- Solid understanding of machine learning fundamentals including supervised and unsupervised learning techniques