Software Engineer, C++ Developer, Embedded Software Engineer
Listed on 2026-05-11
-
Software Development
Software Engineer, C++ Developer, Embedded Software Engineer, Python
Meet the team
We are seeking an experienced and motivated Software Engineer to join our Service Provider High End Router (Cisco 8000) team within the R&D department, contributing to the evolution of next‑generation networking products. In this role, you’ll develop and optimize firmware, SDKs, simulators, and compilers for Cisco Silicon One architecture, with a strong focus on using the power of P4 (Programming Protocol‑Independent Packet Processors).
Yourimpact
As a Software Engineer, you will design and develop a broad set of advanced networking features. With the foundational capabilities of our next‑generation platforms already established, this role offers a true ground‑floor opportunity to drive the next phase of product growth. You will help shape our convergence strategy in the Service Provider space and deliver high‑impact features powering Web, Cloud, Data Center, and Mobile networking solutions.
Responsibilities- Design, implement, and test C, C++, and P4 programs to define packet‑processing behaviors on high‑performance network devices.
- Build, optimize, and enhance the backend of the P4 compiler to fully leverage the capabilities of advanced networking hardware.
- Solve complex resource‑management challenges and optimize resource allocation across programmable network‑processing pipelines.
- Collaborate closely with ASIC engineers to ensure seamless integration of P4 programs with next‑generation IC designs, including providing compiler support throughout hardware development cycles.
- Participate in the design and implementation of new C, C++, and P4 language features to support the evolving needs of network application developers.
- Develop Python‑based test frameworks and author Python test cases to validate SDK functionality and ensure correctness, performance, and reliability of P4‑based data‑plane programming.
- Bachelor’s degree with 7+ years of relevant experience or master’s degree with 4+ years, or PhD with 1+ years of relevant experience in a STEM discipline.
- Experience in software design and development using C, C++, and Python, including contributions to production‑quality systems.
- Experience in troubleshooting, debugging, and resolving complex software issues across large, distributed codebases, with practical experience in using tools such as GDB, PDB, etc.
- Experience with Layer 2 (L2) and Layer 3 (L3) networking technologies, protocols, and data‑plane behaviors.
- Experience with network‑processor software programming is a strong plus.
- Hands‑on experience with P4 and low‑level microcode development.
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).