Who We Are
We seeking for experienced and motivated C++ Software Engineers to join the field of Network Technology within our R&D department which contributes to the evolution of the next generation of leading networking products. We are building firmware, SDK, simulators and compilers for Cisco Silicon One™ architecture and work in the development of pioneering technology.
We have multiple positions open within various teams working on Cisco Silicon One™ and looking for all levels of experience and seniority.
Who You'll Work With
The team is working on the new generation of silicon which will be part of all families of Cisco devices that will drive the future of the internet.
This is an opportunity to work with worldwide distributed Cisco R&D centers and learn from the best engineers in the field.
We are looking for people who are in love with technology and engineering to help us push the limits of what is possible through innovation, determination, and teamwork.
What You'll Do
- Design, develop and program various software components using C++
- Collaborate within software development teams on application design and development
- Identify bottlenecks and bugs, and devise solutions to these problems
- Optimize software by performing maintenance, updates and upgrades
- Help maintain code quality, organization and automatization
- Design, develop and program data-path/packet processing flows
- Interact with Hardware and ASIC design teams internally and inside various CISCO locations
- Participate in the SW/HW integration
The result of your work will be integrated into the products of world-leading companies and will have a worldwide impact.
Who You Are
- 3+ years of programming experience with. C++
- Academic education in computer technology (finished BSc/MSc studies)
- Good problem-solving, debugging and analytical skills
- High level of work autonomy and sense of responsibility
- Fluency in spoken and written English
Bonus Points
- Understanding of computer networks and network protocols (Ethernet, TCP/IP...)
- Good understanding the way how hardware is working
- Experience with Makefiles and Linux
- Knowledge of I2C, SPI, USART, PCI communication protocols
- Kernel driver development
- Experience with ARM microcontrollers
- Software techniques for writing optimized code
- Familiarity with the concept of unit testing
- Experience with other programming languages and tools such as Python and SWIG