Picture

Software Engineer - Networking

Meta

Menlo Park, CA, USA

·

2 w

·

Full time

·

Other

Minimum

$117000 Per Year

Maximum

$173000 Per Year

The DC Networking team is responsible for developing, deploying, and operating Meta's global data center networks. Our work covers the entire network lifecycle, including hardware development, capacity planning, distributed and centralized control systems, modeling/provisioning/automation, monitoring/troubleshooting/analytics, and simulation/design/failure analysis. We are actively seeking Software Engineers to help build and scale our rapidly evolving network infrastructure. We are looking for Software Engineers with a passion for networking and aptitude for building scalable distributed systems. Do you want to work on one of the most dynamic, fast-paced networks in the world? Do you want to develop innovative solutions to our challenges and ship them into production? Then a role on one of our network engineering teams is for you!

Software Engineer - Networking Responsibilities
• Design and implement drivers (and/or Firmware) for (network) ethernet adapter functions, Transport stack for RDMA, control functions with the host/accelerators.
• Design and implement Platform services such as programming, monitoring, and controlling system components (Optics, PHY, FPGAs, sensors, fan control, power etc).
• Develop and enhance HPC collective communication and parallel computing libraries such as NCCL, RCCL, OneCCL, and MPI
• Debug complex, system-level, multi-component issues that typically span across multiple layers from Kernel, and user-mode applications.

Minimum Qualifications
• Currently has, or is in the process of obtaining a Bachelor's degree in Computer Science, Computer Engineering, relevant technical field, or equivalent practical experience. Degree must be completed prior to joining Meta.
• Proficient in programming in C/C++/Python
• Hands on experience with debugging large scale systems

Preferred Qualifications
• Experience in one of the following areas -
• Experience with Linux Kernel, especially drivers and network stack
• Working knowledge of transport stack particularly RDMA (RoCEv2)
• Experience with parallel computing platforms such as CUDA, RoCM and OpenCL
• Platform services (program, control, and monitor Optics, PHY, FPGAs, sensors, fan control, power etc), BSP/Board Support Package, Operating Systems, Kernel, Bootloader, Power Management, RTOS, Linux.
• Experience with Qemu, FPGA Emulation environment is a plus