Senior Math Libraries Engineer – Emulation in AI and HPC
Tech Stack
Tag name is followed by "@" symbol and proficiency level value.
About proficiency levels:
- 1-2 — basic awareness. Minimal hands-on experience, and a rudimentary understanding of the technology's purpose;
- 3-6 — daily use. Comfortable and regular usage, capable of handling common tasks and challenges related to the technology;
- 7-9 — you are an expert, you can teach others, you know all the pitfalls and tricks;
- 10 — exceptional knowledge, comprehensive understanding, and adeptness in all aspects of the technology, including advanced problem-solving. Think twice before claiming or demanding such level.
AI
Algorithms @ 4
CUDA @ 6
Communication @ 6
Deep Learning
GPU @ 4
HPC
NLP
Performance Optimization @ 6
Product Management @ 4
Python
Technical Leadership
- 1-2 — basic awareness. Minimal hands-on experience, and a rudimentary understanding of the technology's purpose;
- 3-6 — daily use. Comfortable and regular usage, capable of handling common tasks and challenges related to the technology;
- 7-9 — you are an expert, you can teach others, you know all the pitfalls and tricks;
- 10 — exceptional knowledge, comprehensive understanding, and adeptness in all aspects of the technology, including advanced problem-solving. Think twice before claiming or demanding such level.
Details
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.
Requirements
- 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.
Ways to Stand Out from the Crowd
- 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.
Competitive salaries and a generous benefits package are mentioned. Your base salary will be determined based on your location, experience, and the pay of employees in similar positions. For Poland: The base salary range is 292,500 PLN - 507,000 PLN for Level 4, and 375,000 PLN - 650,000 PLN for Level 5.
#LI-Hybrid