Description
The MIG Platform Forwarding team at Cisco is seeking a Software Engineer to work on high-performance data plane software for IOS-XR platforms, leveraging 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 Layer 2 and Layer 3 forwarding features, and ensuring they extract maximum performance from NPUs.
Key Responsibilities:
- Feature Design & Implementation: Own the design and development of specific forwarding features within the IOS-XR platform, writing high-performance, production-grade 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 found during internal testing or customer deployments, analyzing logs, core dumps, and packet traces.
- Performance Optimization: Profile and tune code to minimize latency and maximize throughput, ensuring the software meets strict service provider performance metrics.
- Modern Development Practices: Utilize AI/LLM-based tools for code generation, unit test creation, and static analysis to improve individual productivity and code quality.
Requirements:
- BS/MS in Computer Science, Electrical Engineering, or related field.
- 6-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.
- Experience working on tools such as Clearcase, Valgrind, DDTS, GDB, etc.
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.