About the job
We are looking for software engineers to join our math libraries teams for AI and HPC kernel generation, specifically targeting emulation of math operations across different precisions. Around the world, leading commercial and academic organizations are revolutionizing AI, scientific and engineering simulations, and data analytics, using data centers powered by GPUs. Applications of these technologies are in healthcare, NLP, VR, deep learning, autonomous vehicles and countless others. Did you know our team develops the GPU accelerated math libraries that makes all of this possible? If the idea of tinkering with bits and precision formats in math operations and applying your knowledge to develop and optimize algorithms to make an impact around world excite you, come and join our team!
Responsibilities
Scoping, designing, and implementing high quality and performance numerical dense linear algebra software on GPUs.
Providing technical leadership and feedback to library engineers working with you on projects and sometimes mentor interns.
Working closely with product management and other internal and external customers to understand feature and performance requirements and help define the technical roadmaps of libraries.
Finding opportunities to improve library performance and reduce code maintenance overhead through re-architecting.
Qualifications
Minimum
PhD or Master’s degree in Computer Science, Applied Math, or related science or engineering field of study (or equivalent experience).
5+ years of experience in designing, developing, testing, maintenance, and performance optimization of production software using CUDA and C++.
Good knowledge of GPU (preferred) or CPU hardware architecture.
Strong fundamentals in finite precision arithmetics and numerical methods for linear algebra.
Great teamwork, communication, and documentation habits.
Preferred
Experience with CUTLASS, or low level programming like assembly for performance optimization is a huge plus.
A scripting language, preferably Python.
Experience with working in a globally-distributed team.