Senior C++ Engineer
Posted 6hrs ago
Employment Information
Report this job
Job expired or something wrong with this job?
Job Description
Senior C++ Engineer developing SONiC software for Arista Networks’ data-center switches. Building, testing, debugging, and upstreaming networking features for large-scale networks.
Responsibilities:
- Join Arista Networks’ SONiC software development team
- Build and qualify features for large data center networks
- Develop and deliver SONiC software for Arista switches
- Gather functional and technical requirements with fellow engineers and marketing
- Write functional specifications, design specifications, test plans, and implementation code
- Work with the SONiC community to upstream code and test changes
- Collaborate with customers to triage and fix network problems through software releases or patches
- Develop, monitor, debug, and maintain automated software tests
- Own projects from definition through deployment and ensure delivery quality
- Implement system-software solutions using C, C++, and Python
- Work on routing-protocol solutions with a team
- Analyze system-test issues and provide fixes
- Mentor new and junior engineers
- Review and contribute to specifications and implementations from team members and the SONiC community
- Create and maintain implementation and debugging schedules and report weekly to the project lead
Requirements:
- BSc, MS or Ph.D. in Computer Science, Electrical Engineering, or Computer Engineering
- 2+ years of related postgraduate work experience
- Knowledge of C, C++, and/or Python
- Knowledge of UNIX or Linux
- Understanding of L2/L3 networking
- Knowledge of IP routing protocols such as RIP, OSPF, BGP, IS-IS, or PIM is desirable
- Knowledge of Layer 2 features such as 802.1d bridging, Spanning Tree Protocol, Link Aggregation Control Protocol, Link Layer Discovery Protocol, or RFC 1812 IP routing is desirable
- Ability to utilize, test, and debug packet forwarding engines and vendor-provided hardware component software libraries
- Knowledge of distributed-systems infrastructure functions including messaging, signaling, databases, and command-line interface techniques
- Hands-on experience designing and developing Ethernet bridging, routing-related, or distributed-systems software is desirable
- Hands-on experience with enterprise or service-provider Ethernet switch/router system software development, or significant PhD-level research in network routing and packet forwarding, is desirable
- Applied understanding of software engineering principles
- Strong problem-solving and software troubleshooting skills
- Ability to design and implement solutions to small-sized problems independently
- Ability to work on a small team solving medium-sized problems with limited oversight
Benefits:
- Remote work option
- Compensation and work-life balance recognition/awards















