Senior Software Engineer - Networking (C / C++, DPDK / VPP)

Emumba

Location
Toronto, ON
Arrangement
On-site
Type
Full-time
Posted
Closes
Experience
Senior
Tools
C/C++, DPDK, VPP, Kubernetes, Docker, gRPC

We're looking for a hands-on Senior Software Engineer - Networking (C/C++, DPDK/VPP) with strong expertise in developing networking software across the data path, control plane, and related infrastructure. You'll design and build forwarding, protocol, and packet-processing components that run in virtualized and containerized environments, integrating hardware and software-based data paths into production systems.

This is a highly technical individual contributor role focused on building high-performance networking solutions. You'll work across networking, security, data-path technologies, and cloud-native infrastructure while collaborating with distributed teams across multiple locations and time zones.

KEY RESPONSIBILITIES

  • Design and develop networking software across the data path, control plane, forwarding, and protocol layers.
  • Build packet processing pipelines and integrate them with hardware-based data paths such as Network ASICs and software-based data paths such as

VPP and DPDK.

  • Develop and enhance SD-WAN data-path features, including IPsec, firewall, WAN selection, secure web gateway, zone-based firewall, and stateful firewall capabilities.
  • Work on DPI, VPN, QoS, and other data-path technologies, with a strong focus on performance and optimized packet processing.
  • Develop and integrate networking components in cloud-native environments using Kubernetes, Docker, distributed systems, message buses, and gRPC.
  • Integrate and enhance open-source and third-party networking and infrastructure components while independently troubleshooting and improving production systems.

SKILLS, KNOWLEDGE AND EXPERTISE

Must-Have Skills

  • 5+ years of strong experience developing networking software, particularly data-path, forwarding, or packet-processing components.
  • Strong understanding of data center networking and networking stack development.
  • Hands-on experience with C/C++, with the ability to write optimized, performance-sensitive code.
  • Experience with DPDK, VPP, or similar data-path technologies.
  • Experience with networking and security technologies such as IPsec, VPN, DPI, QoS, firewalls, and SD-WAN.
  • Experience with Linux/Unix system programming, Kubernetes, and Docker.
  • Understanding of distributed systems, message buses, and gRPC.

Nice-to-Have

  • Experience with Golang and microservices architecture.
  • Experience with programmable packet-processing pipelines and CNF/VNF technologies.
  • Experience working with Broadcom or other Network ASICs.
  • Experience with CNCF technologies and cloud-native networking.
  • Experience integrating networking solutions with security providers such as Zscaler or Palo Alto Cloud NGFW.

Share this job