About this role
Job Description:
• Write functional specifications and design specifications for small-sized packet forwarding engine features and system software to manage hardware components.
• Independently implement solutions to small-sized problems in our packet forwarding engine software and system software using the C, C++, and python programming languages.
• Understand, utilize, test, and debug packet forwarding engine and hardware components vendor-provided software libraries in your solutions.
• Write test plan specifications for small-sized packet forwarding engine features and system software, and implement automated test programs to execute the cases described in the test plan.
• Debug problems found by our automated test programs and fix the problems.
• Work on a team implementing, testing, and debugging solutions to larger packet forwarding engine software problems and system software issues.
• Work with Customer Support Engineers to analyze problems in customer networks and provide fixes for those problems when needed in the form of new software releases or software patches.
• Work with the hardware team and hardware component vendors to bring up initial versions of new systems using packet forwarding engines and system software.
• Work with the diagnostic software team to design and develop software for the validation of new packet forwarding engine ASICs and hardware components.
• Work with the System Test Engineers to analyze problems found in their tests and provide fixes for those problems.
• Mentor new and junior engineers to bring them up to speed in Arista's software development environment.
• Review and contribute to the specifications and implementations written by other team members.
• Help to create a schedule for the implementation and debugging tasks, updating that schedule weekly, and reporting it to the project lead.
Requirements:
• BS Computer Science/Electrical Engineering/Computer Engineering + 8 years experience, or MS Computer Science/Electrical Engineering/Computer Engineering + 6 years experience, or Ph.D. in Computer Science/Electrical Engineering/Computer Engineering + 3 years experience, or equivalent work experience
• Experience or knowledge in C or C++
• Knowledge of UNIX or Linux
• Understanding of IP networking or distributed systems
• Applied understanding of software engineering principles
• Strong problem solving and software troubleshooting skills
• Ability to design a solution to a small-sized problem, and implement that solution without outside help.
• Able to work on a small team solving a medium-sized problem with limited oversight.
Benefits:
• Health insurance
• Dental
• Vision
• Wellbeing
• Income protection
• Group Retirement Savings Plan