Software Engineer - SONiC
Job in
Vancouver, BC, Canada
Listing for:
Arista Networks
Full Time
position
Listed on 2026-01-12
Job specializations:
-
Software Development
Software Engineer, DevOps, Python, Embedded Software Engineer
Job Description & How to Apply Below
Job Description Who You’ll Work With
Arista Networks is looking for world-class software engineers to join our Software for Open Networking in the Cloud (SONiC) software development team. As a core member of the SONiC team, you will be part of a fast-paced, high caliber team building and qualifying features to run the world's largest data center networks.
The SONiC team is responsible for all aspects of the development and delivery of SONiC software meant to run on various Arista switches. You will work with your fellow engineers and members of the marketing team to gather and understand the functional and technical requirements for upcoming projects. You will help write functional specifications, design specifications, test plans, and the code to bring all of these to life and work with the SONiC community to upstream the code/test changes.
You will also work with customers to triage and fix problems in their networks. Internally, you will develop automated tests for your software, monitor the execution of those tests, and triage and fix problems found by your tests. At Arista, you will own your projects from definition to deployment, and you will be responsible for the quality of everything you deliver.
What You’ll Do
This role demands strong and broad software engineering fundamentals, and ideally a good understanding of networking including capabilities like L2, L3, and fundamentals of commercial switching HW.
Responsibilities:
Write functional specifications and design specifications for system software to manage hardware components.Independently implement solutions to small-sized problems in the system software using the C, C++, and python programming languages.Write test plan specifications for small-sized features 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 routing protocol problems.Worth 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 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 as well as broader SONiC development.Review and contribute to the specifications and implementations written by other team members and the SONiC community.Help to create a schedule for the implementation and debugging tasks, update that schedule weekly, and report it to the project lead.Qualifications
BSc, MS or in Computer Science/Electrical Engineering/Computer Engineering with 3+ years of related post graduate work experienceKnowledge of C, C++, and/or python.Knowledge of UNIX or Linux.Understanding of L2/L3 networking including at least one of the following areas is desirable:IP routing protocols, such as RIP, OSPF, BGP, IS-IS, or PIM.Layer 2 features such as bridging, the Spanning Tree Protocol, the Link Aggregation Control Protocol, the Link Layer Discovery Protocol, or RFC 1812 IP routing.Ability to utilize, test, and debug packet forwarding engine and a hardware component’s vendor provided software libraries in your solutions.Infrastructure functions related to distributed systems such as messaging, signaling, databases, and command line interface techniques.Hands-on experience in the design and development of ethernet bridging or routing related software or distributed systems software is desirable.Hands-on experience with enterprise or service provider class Ethernet switch/router system software development, or significant PhD level research in the area of network routing and packet forwarding is desirable.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.This is a…
Note that applications are not being accepted from your jurisdiction for this job currently via this jobsite. Candidate preferences are the decision of the Employer or Recruiting Agent, and are controlled by them alone.
To Search, View & Apply for jobs on this site that accept applications from your location or country, tap here to make a Search:
Search for further Jobs Here: