Device Driver Developer
We are seeking a highly skilled and experienced Device Driver Developer to join our core driver development team. This role involves the design, development, optimization, and debugging of high-performance Ethernet Network Interface Card (NIC) drivers that operate at the kernel level. The ideal candidate will have deep expertise in low-level programming, network protocols (L2/L3), and kernel internals across multiple operating systems, including Linux, FreeBSD, and Windows.
Key Responsibilities
- Driver Development: Design and implement robust, high-performance, and scalable Ethernet device drivers for new and existing NIC hardware platforms.
- Cross-Platform Porting: Adapt, port, and maintain driver codebases across Linux, FreeBSD, and Windows operating system kernels, ensuring feature parity and optimal performance.
- Performance Optimization: Analyze network latency, throughput, and CPU utilization. Implement advanced techniques such as interrupt mitigation, DMA optimization, and ring buffer management to maximize NIC performance.
- Debugging & Triage: Utilize kernel debugging tools (e.g., KDB, Windbg, crash dump analysis) to identify and resolve complex, asynchronous, and intermittent hardware/software integration issues.
- Hardware Interfacing: Work directly with hardware specifications to program low-level functions including Memory-Mapped I/O (MMIO), Direct Memory Access (DMA), and Interrupt Request (IRQ) handling.
- Documentation: Create and maintain detailed technical specifications, design documents, and release notes for all developed drivers and kernel modules.
Required Qualifications
- Education: Bachelor's degree in Computer Science, Computer Engineering or Electrical Engineering with 5+ years of experience or Master's degree in Computer Science, Computer Engineering or Electrical Engineering with 3+ years of experience
- Programming: Expert proficiency in C with demonstrable experience in systems-level programming.
- Kernel Expertise: Deep understanding of operating system kernel fundamentals, including memory management, interrupt handling, concurrency, and thread scheduling.
- Low-Level Networking: Solid understanding of the Ethernet standard (IEEE 802.3) and network protocols (TCP/IP, UDP, ARP) up to Layer 3.
- Hardware Interface: Proven experience with low-level hardware interaction, including PCI/PCIe bus architecture and register programming.
- Concurrency Control: Practical experience implementing and debugging synchronization primitives such as spinlocks, mutexes, and semaphores in a kernel context.
Preferred Skills and Experience
- High-Speed Technologies: Experience with emerging networking technologies like RDMA (RoCE, InfiniBand), DPDK, or other user-space networking frameworks.
- Virtualization: Familiarity with network virtualization technologies such as SR-IOV, VirtIO, or other para-virtualized I/O approaches.
- Debugging Tools: Experience with hardware debuggers, logic analyzers, and advanced tracing tools.
- Source Control: Strong proficiency with Git and associated version control workflows.
Additional Job Description:
Compensation and Benefits
The annual base salary range for this position is $91,000 - $146,000. This position is also eligible for a discretionary annual bonus in accordance with relevant plan documents, and equity in accordance with equity plan documents and equity award agreements. Broadcom offers a competitive and comprehensive benefits package: Medical, dental and vision plans, 401(K) participation including company matching, Employee Stock Purchase Program (ESPP), Employee Assistance Program (EAP), company paid holidays, paid sick leave and vacation time. The company follows all applicable laws for Paid Family Leave and other leaves of absence.
Broadcom is proud to be an equal opportunity employer. We will consider qualified applicants without regard to race, color, creed, religion, sex, sexual orientation, national origin, citizenship, disability status, medical condition, pregnancy, protected veteran status or any other characteristic protected by federal, state, or local law. We will also consider qualified applicants with arrest and conviction records consistent with local law. If you are located outside USA, please be sure to fill out a home address as this will be used for future correspondence.