Network Software Engineer
Develop innovative communication stack for high-performance computing, focusing on low-latency networking and packet processing. Work closely with hardware teams to offload key features.
Responsibilities
- Take part in developing a networking stack from the ground up.
- Analyze customer applications and explore creative ways to accelerate them in hardware or software.
- Find the best ways to process packets on the hardware platform.
- Participate in architecture of future NIC generations.
- Develop user-space libraries and benchmarks for low-latency communication.
- Work closely with hardware teams to offload key features into next-generation products.
Requirements
- At least 3 years of experience as a software engineer.
- Experience in C or C++.
- Previous work on at least one of: NIC offload technologies (RDMA, TOE, NVMeOF, UEC), HPC communication frameworks (MPI, UCX, libfabric), packet processing SDKs (DPDK, eBPF, XDP), user-space libraries for low-latency networking, or networking device driver development.