
Software Engineer - Host Networking
Required skills
- C/C++
- Python
- Shell Scripting
- network devices
- routers
- switches
- adapters
- load balancers
- network routing protocols
- test automation
Nice to have
- platform services
- Optics
- FPGAs
- sensors
- fan control
- power
Role summary
Meta is seeking experienced Software Engineers to join their network infrastructure teams. This role involves designing, developing, and operating complex, scalable distributed systems for Meta's global data centers, powering advanced technologies like AI and the Metaverse. Responsibilities include developing drivers, firmware, and software for network devices and transport stacks, debugging system-level issues, optimizing performance, automating test suites for CI/CD, and managing datacenter network switches. The ideal candidate will have a strong background in C/C++, scripting languages, network devices, and protocols, with experience in test automation and cross-functional collaboration. Preferred qualifications include experience with platform services, RDMA, parallel computing, and Linux kernel development.
Responsibilities
- Design, develop, and validate drivers, firmware, and software for network devices, transport stacks, and AI workloads
- Debug complex system-level issues and lead performance tuning exercises to optimize software stack performance
- Understand software components from multiple partner teams, lead integration efforts, and drive continued development
- Develop and automate test suites for CI/CD framework and various components
- Collaborate with partner teams to integrate software components, align on goals, and participate in oncall rotations
- Design, develop, and deploy services to manage datacenter network switches and forwarding functions
- Enhance HPC collective communication and parallel computing libraries (NCCL, RCCL, OneCCL, MPI)
- Develop infrastructure to maintain switch state and enable communication between services at scale
Minimum Qualifications
- Bachelor's degree in Computer Science, Computer Engineering, relevant technical field, or equivalent practical experience
- 7+ years software development experience in industry settings or PhD with 4+ years of experience
- 3+ years relevant experience with network devices and products (routers, switches, adapters, load balancers) and an understanding of network routing protocols in industry settings
- Proficiency in C/C++ and at least one scripting language (Python/Shell Scripting)
- Experience with developing and automating test suites
- Experience collaborating with cross-functional teams (e.g., hardware, firmware, test) to define and deliver technical solutions
Preferred Qualifications
- Experience with one of: platform services (program, control, and monitor Optics, Physical Layer (PHY), FPGAs, sensors, fan control, power etc), Board Support Package (BSP), Operating Systems, Kernel, Bootloader, Power Management, Real-Time Operating System (RTOS), Linux
- Working knowledge of transport stack particularly Remote Direct Memory Access (RDMA) and/or RDMA over Converged Ethernet version 2 (RoCEv2)
- Parallel computing platforms such as CUDA, RoCM and OpenCL
- Linux Kernel, especially drivers and network stack
- Qemu, FPGA Emulation environment is a plus
- Systems programming, TCP/IP, HTTP/HTTPS, SPDY, DNS, and load balancers
$183,997/year to $257,000/year + bonus + equity + benefits
Similar roles
Finance and Business Operations Manager, MarketingMeta · Menlo Park, CA · Onsite
Interaction/UX Sound Designer - FoAMeta · Fremont, CA · Onsite- Staff Software Engineer, AI Model LifecycleCRUSOE · San Francisco · Onsite
Lead, Mobile App Software EngineerWhitepages · Seattle, WA · Hybrid- Staff Embedded Software EngineersRivian and Volkswagen Group Technologies · Palo Alto, CA · Onsite
- Software EngineerPublicis Groupe Holdings · Westminster, CO · Hybrid
