Description
You will join the Mass-Scale Infrastructure Group (MIG) Platform Forwarding team, building high-performance data plane software for IOS-XR platforms using Silicon One (SiOne) Network Processing Units (NPUs).
As a Software Engineer, you will focus on designing, coding, and optimizing forwarding software, delivering high-quality code for complex L2/L3 forwarding features, and extracting maximum performance from NPUs.
Responsibilities:
- Feature Design & Implementation: Design and develop specific forwarding features within the IOS-XR platform, writing high-performance code for QOS, Mirroring, Slowpath, OAM, Layer 2 (EVPN, VPLS), and Layer 3 (SRv6, Segment Routing, MPLS) technologies.
- NPU Data Plane Programming: Implement data plane logic to optimize packet processing, translating network protocol requirements into efficient NPU microcode and SDK interactions.
- Debugging & Root Cause Analysis: Investigate and resolve complex software defects, analyzing logs, core dumps, and packet traces.
- Performance Optimization: Profile and tune code to minimize latency and enhance throughput, ensuring software meets strict service provider performance metrics.
- Modern Development Practices: Use AI/LLM-based tools for code generation, unit test creation, and static analysis.
Requirements:
- Embedded Development: Strong proficiency in C/C++ for high-performance embedded systems, and Python for scripting and test automation.
- NPU Familiarity: Experience with NPU-based data plane architectures, pipelining, table management, and packet processing flows.
- Forwarding Protocols (L2/L3): Strong understanding and implementation experience in QOS, Mirroring, OAM, Layer 2 (EVPN, VPLS), and Layer 3 routing (SRv6, Segment Routing, MPLS, IPv4/v6).
- Network Knowledge & Debugging: Understanding of router deployments in Service Provider networks, and ability to debug issues at the component level.
- Modern SDLC: Experience with CI/CD pipelines, Git, and code review processes.
Minimum Qualifications:
- BS/MS in Computer Science, Electrical Engineering, or related field.
- 7-10 years of experience in embedded software development for networking products.
- Strong programming skills in C/C++ and scripting in Python.
- Solid knowledge of carrier-grade networking OS and forwarding architectures.
- Experience debugging complex embedded software issues.
Preferred Qualifications:
- Experience with IOS-XR or similar carrier-grade network operating systems.
- Knowledge of Internet Protocols (TCP/UDP, IPv4/IPv6).
- Exposure to Networking Protocols (L2/L3, QoS, ACLs).
- Experience with BCM, Sione, Ezchip NPU programming.
- Familiarity with AI/ML tools for software engineering.