About The Position

At NVIDIA, we’re solving the world’s most ambitious problems with our unique approach to accelerated computing. We’re looking for a passionate and energized software engineer to join the NVIDIA Cryptography team working on ground-breaking cryptography solutions. In this role, you will contribute to the development and integration of cryptographic algorithms and low-level mathematical primitives within cuPQC Software Development Kit (SDK), focusing on Post-Quantum Cryptography (PQC), and Privacy-Enhancing Technologies (PETs). Our SDK is focused on security software stacks targeting a range of processors from edge computing to data center class GPUs. These high-performance libraries provide accelerated cryptographic building blocks as well as NIST standard PQC algorithms. The advent of quantum computing requires major changes in the cryptography landscape, driving significant growth in the market for Post-Quantum Cryptography (PQC) and Privacy-Enhancing Technologies (PETs). As these technologies become increasingly essential for securing sensitive data and ensuring privacy across various industries, the demand for robust and efficient solutions is higher than ever. You will play a crucial role in designing, developing, and optimizing cryptographic algorithms and low-level mathematical primitives for high-performance execution on NVIDIA GPUs, influencing the creation of APIs, documentation, and the overall developer experience. Does the idea of being at the heart of these projects and applying your knowledge to architect and optimize algorithms which make an impact around the world excite you? If yes, then come and join our team!

Requirements

  • PhD or MSc’s degree in Applied Mathematics, Computer Science, or related science or engineering field is preferred (or equivalent experience).
  • 5+ years of experience designing and developing software for cryptography in low latency or high throughput environments
  • Strong mathematical foundations.
  • Advanced C++ skills, including modern design paradigms (e.g. template meta-programming, SFINAE, RAII, constexpr, etc).
  • Strong collaboration, communication, and documentation habits.

Nice To Haves

  • Experience developing libraries consumed by many users.
  • Experience with CUDA C++, and GPU computing.
  • Programming skills with contemporary automation setups for both building software (e.g. cmake) as well as testing (e.g. CI/CD, sanitizers).
  • Strong understanding of mathematical foundations and algorithms used in cryptography, including but not limited to finite field arithmetic, lattice-based cryptography, and cryptographic hash functions.

Responsibilities

  • Develop and optimize scalable high-performance cryptographic primitives, algorithms, and building blocks on the latest GPU hardware architectures
  • Emphasize robust long term software architectures and designs that effectively use many generations of hardware
  • Work closely with internal(product management, engineering) and external partners to understand feature and performance requirements and deliver timely cuPQC releases.

Benefits

  • competitive salaries
  • generous benefits package
  • equity
  • 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

Senior

Number of Employees

5,001-10,000 employees

© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service