Senior Software Engineer responsible for building critical infrastructure/operating-system software providing scalability, agility and programmability for current and future generations of routing/switching products.
Responsibilities
Play a critical role in driving our technology vision forward and ensuring that we execute across multiple initiatives.
Work closely with other engineers across cross-functional teams and product management teams to design, build, and ship high quality software.
Architect and implement robust and scalable high availability services.
Conduct low level performance analysis and optimization of the software stack.
Requirements
Minimum 12+ years of experience as Software Engineer.
Computer Science fundamentals and Software Engineering best practices.
Deep hands-on experience in designing, building, delivering, and maintaining critical production-grade software.
Experience in resource constrained computing (embedded systems).
Understanding of performance characteristics, balancing tradeoffs between memory, CPU, and I/O.
Ability to work with large complex codebases.
Proficient in C and C++, Python is desirable.
Proficient in Linux programming and an understanding of OS internals, multi-threading and memory management subsystem.
Strong working knowledge of distributed systems.
Hands on development experience on routing/switching platforms.