About The Position

We are looking for software engineers to join our development efforts in the area of sparse linear algebra kernels for high-performance libraries such as cuSPARSE and cuDSS. Around the world, leading commercial and academic organizations are revolutionizing AI, data analytics, and scientific and engineering simulations, using data centers powered by GPUs and high-performance linear algebra libraries. Applications of these technologies include computer aided engineering (CAE), electronic design automation (EDA), quantum chemistry, autonomous vehicles, LLMs, and countless others. Did you know our team develops the GPU accelerated libraries and SDKs that help make these possible? In this role, you will work together with other developers on designing, developing, and optimizing kernels for various algorithms including basic sparse BLAS operations like matrix-vector-products and matrix-matrix-products, direct sparse solvers, iterative sparse solvers, preconditioners, and algebraic multigrid (AMG). Ideal candidates will not only have experience developing accelerated computing kernels, but also be motivated to advance the state-of-the-art in a variety of accelerated computing domains. If this sounds exciting, we would love to meet you!

Requirements

  • PhD or MSc degree (or equivalent experience) in Computational Science and Engineering, Computer Science, Applied Mathematics, or related science or engineering field is preferred
  • 5+ years of overall experience in developing, debugging and optimizing high-performance sparse linear algebra software using C++ and parallel programming; ideally using CUDA, MPI, OpenMP, OpenACC, pthreads, or equivalent technologies
  • Strong fundamentals in floating point arithmetic and implementation of sparse linear algebra primitives like matrix-vector and matrix-matrix products
  • Experience in developing , maintaining, and testing sparse linear algebra libraries
  • Strong collaboration, communication, and documentation habits.

Nice To Haves

  • Good knowledge of CPU and/or GPU hardware architecture and low-level GPU performance optimization
  • Familiarity with technologies such as multi-frontal factorizations, iterative solvers, preconditioners, and algebraic multigrid
  • Experience with adopting and advancing software development practices such as CI/CD systems and project management tools such as JIRA
  • Understanding of large-scale computing technologies such as PDE solvers, eigenvalue solvers and time-domain simulation methods (e.g., CFD, FEA)
  • Working experience in a globally distributed and agile organization

Responsibilities

  • Designing, implementing and optimizing scalable high-performance numerical sparse linear algebra software for existing and future GPU architectures
  • Working with library engineers, QA engineers, and interns on topics ranging from sparse BLAS operations to advanced direct and iterative sparse solvers
  • Working closely with product management and other internal and external partners to understand feature and performance requirements and contribute to the technical roadmaps of libraries
  • Finding and realizing opportunities to improve library quality, performance and maintainability through re-architecting and establishing innovative software development practices

Benefits

  • You will also be eligible for equity and benefits

Stand Out From the Crowd

Upload your resume and get instant feedback on how well it matches this job.

Upload and Match Resume

What This Job Offers

Job Type

Full-time

Career Level

Mid Level

Number of Employees

5,001-10,000 employees

© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service