HamburgerMenu
hirist

Arista Networks - Software Engineer - C/C++ Development

Posted on: 01/12/2025

Job Description

We are seeking a highly skilled and motivated Senior Software Engineer to join our systems software development team.


This role is crucial for designing, developing, and optimizing high-performance network forwarding planes.


The ideal candidate will have deep proficiency in C/C++ development on Linux and experience with acceleration technologies like DPDK to achieve industry-leading packet processing throughput and low latency.


Key Responsibility Areas (KRAs) :


The core responsibilities and expected Key Result Areas for this role include :


High-Performance Forwarding Development :


- Design and implement core features of the network software forwarding plane, ensuring high throughput and low latency.


- KRA : Successfully develop and deploy features that improve forwarding performance by at least % or achieve a target on target hardware.


DPDK Implementation & Optimization :


- Utilize and extend the Data Plane Development Kit (DPDK) framework for fast packet processing on commodity hardware.


- KRA : Lead the integration of new DPDK features or versions and optimize existing DPDK-based applications for maximum efficiency (e.g., minimizing cache misses and core usage).


Quality of Service (QoS) Implementation :


- Design, develop, and integrate complex Quality of Service (QoS) mechanisms (e.g., queuing, scheduling, policing, shaping) into the forwarding path.


- KRA : Deliver robust and configurable QoS features that meet defined SLA requirements for various traffic profiles.


Software Development Lifecycle (SDLC) Management :


- Own feature development from end-to-end : requirements analysis, architectural design, coding, unit testing, and deployment.


KRA : Consistently deliver high-quality, fully documented features within agreed-upon sprint cycles, with minimal post-release defects.


Debugging and System Analysis :


- Apply strong software debugging skills to troubleshoot complex, low-level issues, especially within embedded or high-speed systems.


- KRA : Reduce the average time to resolution (MTTR) for critical software bugs by within the first year.


Code Quality and Standards :


- Write clean, well-commented, and maintainable code in C/C++ following team standards and best practices.


- KRA : Actively participate in code reviews, providing constructive feedback, and ensuring a zero-tolerance policy for memory leaks or critical runtime errors.


Basic Qualifications (Must Have) :


- Education : Bachelor's or Master's degree in Computer Science, Electrical Engineering, or a related field.


- Experience : 3+ years of professional experience working as a Systems Software Development Engineer.


- Programming : Proficiency and extensive hands-on experience in the C++ and/or C programming language.


- Operating Systems : Proven software development experience within the Linux operating system environment.


Preferred Qualifications (Nice to Have) :


- Networking Expertise : Direct experience with DPDK, software forwarding mechanisms, and QoS implementation.


- Scripting : Development experience with Python and/or Golang for tooling, automation, or service development.


- Teamwork : Strong communication skills and a proven ability to collaborate effectively within a fast-paced team environment.


- SDLC Proficiency : Experience working through the complete software development life cycle, right from requirements gathering to delivering the fully developed feature.


- Debugging : Strong software debugging skills, especially in complex or embedded systems environments.


- Domain Knowledge : Previous experience in Network Systems Software development is a significant plus.


info-icon

Did you find something suspicious?