Graphcore in Poland is looking for a Staff Software Engineer to develop new and support existing kernels for linear algebra operations on AI hardware. The role includes designing kernels in C++, mentoring colleagues, and ensuring performance and correctness. Successful candidates will have excellent skills in C++ and Python, experience in profiling on Linux, and a solid understanding of algorithmic performance. Graphcore offers a competitive salary and an inclusive work environment.
Qualifications
Excellent programming and scripting skills using C++ and Python.
Hands-on with reproducibility/determinism, tolerance design, and benchmarking.
Strong command of algorithmic performance - vectorisation, memory hierarchy, threading.
Responsibilities
Design and implement kernels for linear algebra and tensor ops in C++.
Own performance and correctness - add microbenchmarks, regression tests, numerics validation.
Debug issues, resolve bugs and improve the quality and functionality of the product.
Skills
C++
Python
Algorithmic performance
Communication skills
Performance testing
Profiling on Linux
Benchmarking
Tools
BLAS/DNN stack
PyTorch
Linux systems
Job description
Graphcore in Poland is looking for a Staff Software Engineer to develop new and support existing kernels for linear algebra operations on AI hardware. The role includes designing kernels in C++, mentoring colleagues, and ensuring performance and correctness. Successful candidates will have excellent skills in C++ and Python, experience in profiling on Linux, and a solid understanding of algorithmic performance. Graphcore offers a competitive salary and an inclusive work environment.