Description
Cisco is seeking a Software Development Engineer to join the Routing SD-WAN Group, which delivers intelligent, secure, and scalable WAN edge solutions. As a Software Development Engineer – Routing Platforms, you will develop and evolve the forwarding and platform software that powers Cisco's SD-WAN and edge routing solutions.
Your Impact In this role, you will collaborate with ASIC, hardware, and cross-functional engineering teams to define new architectures, implement high-performance packet forwarding, and deliver robust, production-ready features. You will also leverage modern AI tools to enhance software development practices, driving greater efficiency, quality, and innovation across the team.
Key Responsibilities
- Collaborate with hardware engineering teams to bring up new platforms, develop low-level drivers, and integrate Network Interface Modules (NIMs).
- Design, implement, and maintain ROMMON and bootloader software to ensure secure and reliable system initialization.
- Develop and tune high-performance forwarding plane software to meet the rigorous demands of modern secure routing environments.
- Implement and optimize Layer 2 networking protocols and features within the platform stack.
- Perform deep-dive analysis into performance bottlenecks at the kernel and hardware-abstraction layers, including the control plane.
- Utilize modern development workflows, including AI-assisted coding tools and IDEs like VSCode, to accelerate the development lifecycle and improve code quality.
Minimum Qualifications
- 8-12 years of industry experience with end-to-end software development in networking.
- Experience across platforms, system software, kernel/user-space drivers, bootloaders, BIOS, and performance tuning spanning control-plane and data-plane.
- Strong proficiency in C/C++ with a focus on systems programming and Linux environments.
- Proven experience in developing device drivers, working with RTOS/Linux kernels, and understanding hardware-software interfaces.
- Solid understanding of routing architectures and Layer 2 networking protocols (e.g., Ethernet, VLANs, STP).
- Experience with bootloaders (ROMMON), hardware bring-up, and board support packages (BSP).
- Demonstrated ability to debug complex issues spanning hardware, firmware, and software layers.
- Experience with LAN/WAN communication interfaces and Layer 2/Layer 3 technologies.
- Experience with AI/ML techniques and tools for development (e.g., code assistants, static analysis tools, test automation).
Preferred Qualifications
- Knowledge of high-speed interfaces (PHY, MAC, MACSEC) and DPDK.
- Platform/system expertise such as kernel bring-up, driver development, platform/network management software, and cloud networking.
- Debugging experience with i2c, i2c trace analysers, and PCIe.
- Knowledge of x86 or ARM assembly code, instruction sets, and ABIs.
- Experience with debugging using hardware and software debuggers (e.g., GDB, Arium, BDI).