Software Developer - L2/L3 Networking Datapath

Project description

Perform embedded system software design and implementation for leading high-performance data networking products as a member of a highly capable and dynamic engineering team.

Responsibilities

  • Design, develop, and maintain embedded routing, switching or analytics software.
  • Implement new features for networking platforms.
  • Propose design architectures and solutions for new features and enhancements.
  • Unit test implemented work.
  • Work with third party protocol/database stacks.
  • Resolve software issues that arise during testing cycle and from customers.
  • Work closely with software quality assurance engineering to review feature test plans and confirm functions.
  • Be involved in early-stage development of high-performance, next-generation networking platforms
  • The ideal candidate should have BS/MS in Engineering CS, EE or related field and 6 years or more hands-on experience in Networking domain

SKILLS

Must have

  • Minimum of BS/MS in Engineering CS, EE
  • 4 to 12 years of relevant industry experience in Networking/Telecom- Embedded/Network Management
  • Software or Hardware-based Packet Forwarding
  • Software management of networking HW resources such as TCAM, packet buffers, RIB/FIB,ACL
  • IPv4/IPv6 routing/forwarding, PBR, ACL, Rate-limiting, QoS
  • MPLS, VPLS, VLL, VRF, L3VPN, VXLAN, Openflow, SDN
  • Hitless Software Upgrade/ISSU and High Availability
  • TCP/IP stack, ARP/ND, DHCP
  • LAG/LACP, Layer 2 switching, Ethernet
  • REST API

Nice to have

• Understanding of system architecture, SDK or Drivers for network processor or traffic manager ASIC/FPGA preferred. • Experience in Linux OS and multi-threaded programming preferred. • Experience in Python, shell scripting preferred. • Experience in automated software unit testing preferred. • Excellent C coding and debugging skills are required. • Comfortable with technical and business English usage (documents reading, e-mails, conference calls)