Job Roles and Responsibilities:
- As a core member of our software R&D team, you’ll design Linux kernel driver, user space library and application for Nvidia DPU, focusing on networking, virtualization and security.
- Develop pioneering offload mechanisms for network protocols to showcase our hardware offload capabilities.
- Work with architecture team to design, review new feature specification and code architecture documents.
- Define test plans together with verification and QA team for advanced features.
- Debug, fix software issues in each software release, and provide support to technical partners, customers(both internal and external).
- B.S. EE/CS or equivalent experience (engineering degree is preferred)
- 5+ years of proven experience in software development
- Strong programming ability in C
- Extensive knowledge of computer architecture (x86, ARM CPUs) and modern multitasking operation systems
- 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 L2/L3/L4 – Ethernet/IP/TCP/UDP, and network virtualization
- Network Virtualization software (OVS, OVN, K8S, OpenStack)
- Background with virtualization, virtio, RDMA, and DPDK.
- Experience in System, Performance and Scalability is a plus