Expoint - all jobs in one place

מציאת משרת הייטק בחברות הטובות ביותר מעולם לא הייתה קלה יותר

Limitless High-tech career opportunities - Expoint

Nvidia Senior System Software Engineer 
United States, California 
830834237

18.08.2024

What You Will Be Doing:

  • Develop SW architecture and micro-architecture to advance the state-of-the-art in GPU/SOC memory management, optimizing for performance, complexity, effort, and schedule.

  • Design and implement kernel drivers and embedded software for NVIDIA's products, ensuring optimal performance and feature set on Linux and Windows-based operating systems.

  • Participate in performance simulation and analysis to improve memory access efficiency and overall system performance.

  • Implement and maintain high-level functional and performance models, and debug performance and functional issues with high-level models, emulation and silicon bringup.

  • Work closely with global teams across software, hardware, architecture, and OEM support, contributing to the development of future products and features.

  • Create architectural specifications and customer-facing documents, collaborating with industry partners to ensure comprehensive specifications that account for software interfaces to the GPU.

What We Need to See:

  • Master’s degree in Electrical Engineering, Computer Science, Computer Engineering, or related field (or equivalent experience).

  • 8+ years of meaningful work experience in GPU or SOC Architecture and development, specifically in the area of SMMU, ATS, cache coherency

  • Strong expertise in low-level device drivers, operating system internals, and various device driver models.

  • Proficiency in C and C++ programming, with experience in solving complex problems and optimizing system performance.

  • Detailed knowledge of computer system architecture, including microprocessors, memory controllers, caches, buses, and DMA.

  • Strong communication and interpersonal skills, with a proven ability to work in a dynamic, product-oriented, distributed team environment.

Ways to Stand Out from the Crowd:

  • Experience with hardware memory management units, prefetching, memory coherency, and multi-core systems.

  • Deep understanding of SOC memory management, SMMU, ATS, cache coherency

  • Practical experience with Linux kernel development and contribution to the upstream community

  • Familiarity with system-level security concepts and embedded system software development.

  • A history of successfully mentoring junior engineers and interns, contributing to team growth and development.

You will also be eligible for equity and .