Please Note:1. If you are a first time user, please create your candidate login account before you apply for a job. (Click Sign In > Create Account)2. If you already have a Candidate Account, please Sign-In before you apply.Job Description:Job Description:Software Engineer responsible for designing and development of the network drivers for the High Performance Ethernet NIC.Responsibilities: As a Software Engineer, you will be responsible for the design and development of the network driver for the High Performance Ethernet NIC.Work closely with the Architecture teams, Silicon Design teams and other Software / Firmware teams to architect, design and implement scalable and high performance applicationsAuthor and contribute in software design, development, validation, and documentation to deliver high quality, high performance and functionally excellent products.Work with the QA team to define high quality test cases, review the tests and support through the release development cycle.Work closely with the Customer Support Engineers on any customer field issues and provide timely resolutions Requirements:Minimum Bachelor's Degree in Computer Science/ Electronics / Electrical Engineering.Overall 12+ years of experience in Linux Systems programming, Linux kernel, Linux Network Drivers, Linux Kernel Networking, Virtual Switching and Data center Networking.Experience delivering high-performance NIC drivers in Linux and firmware implementation to support multi-ring architecture.Strong PCIe NIC background to design optimal Rx/Tx data transfer over PCIe, Control and Data Path implementation of Firewall using iptables including offload of Firewall functionality.Experience with SR-IOV / virtio based Virtualization Implementation is desired.Good experience with one or more of fast path implementations - DPDK, eBPF, XDPHands-on experience with KTLS / DTLS Design and Implementation including HW offload of TLS, IPSec HW Offload using Linux XFRM framework are desirable.Good understanding of Network security threats (DoS / DDoS, MIM attacks), TPMExcellent programming skills in C, C++ and Python. Proficiency in developing optimized code in both x86 and ARM64 compiler toolchains.Strong analytical, problem solving and debugging skills in a combined Software and Hardware environments.Excellent written and verbal communication skills, Ability to efficiently collaborate with multiple teams across geographically diverse areas.Good understanding of RDMA & RoCE protocol areas including the user space Verbs API, Linux RDMA core drivers, RoCE drivers, and the RoCE firmware development is desired.Good understanding of HW and OS interactions on Multi-host, Multi-Root and Network Partitioning (NPAR) deployments is highly desired. Exposure to virtualization technologies like Hypervisors, VirtIO, SRIOV, Virtual IOMMU, Memory Management is desired.CI/CD experience using Jenkins, Git is preferredEnthusiastic, Quick Learner and passionate about programmingA team player with good Social SkillsBroadcom is proud to be an equal opportunity employer. We will consider qualified applicants without regard to race, color, creed, religion, sex, sexual orientation, gender identity, 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.
View Original Job Posting