Senior C++ Engineer

Posted 6hrs ago

Employment Information

Education
Salary
Experience
Job Type

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