Senior Linux Kernel Software Engineer

NVIDIA NVIDIA · Semiconductors · Santa Clara, CA

Senior Linux Kernel Software Engineer role focused on developing and optimizing device drivers for NVIDIA's next-generation network interface cards, involving integration, optimization, and driving the complete engineering process for network, security, and storage software stacks.

What you'd actually do

  1. Being part of the Linux kernel group, working on developing the device driver for our NICs.
  2. Integration and optimization of existing products and solutions with our software stack and hardware capabilities.
  3. Crafting and developing components of the network, security, and storage software stacks.
  4. Driving a complete engineering process, including refining requirements, engineering design of data structures/algorithms, implementation, peer review, developer testing, and post-GA support.
  5. Drive complex technical issues to closure that may occur in the cross-team boundary.

Skills

Required

  • Linux kernel programming
  • Device driver development
  • System software stack
  • Software/hardware interaction
  • Network Protocols (TCP/IP, RDMA)
  • Computer architecture
  • Operating systems

Nice to have

  • Open source code contributor
  • RDMA expertise

What the JD emphasized

  • Extensive experience with Linux is required
  • Experience with kernel-level programming is required
  • Deep understanding of the system software stack, with a focus on software/hardware interaction, including platform firmware, device drivers, Linux kernel, and how user-space applications utilize system services to achieve high performance
  • Knowledge of Network Protocols such as TCP/IP and RDMA
  • Deep knowledge of computer architecture and operating systems