Skip to main content
Arista Networks

Senior/Lead Software Engineer

RemoteCanada only
Published
Role
Backend
Experience
Lead
Employment
Full-time
Company size
Enterprise
$120k–$195k/yr
Check eligibility

Open to CA only. Set where you work from to check your eligibility.

No BS summary

Senior/Lead software engineer for Arista’s Linux-based EOS network operating system. Needs 8+ years with BS, 6+ with MS, or 3+ with PhD, plus C/C++/Python, UNIX/Linux, and L2/L3 networking knowledge. Vancouver, BC, Canada role with Canada-wide pay range.

Core skills

C/C++/Python

Required skills

UNIX/LinuxIP networkingdistributed systemssoftware engineering principlesPacket Forwarding EnginesSystem softwareL2L3IP routing protocolsBGPOSPFIS-ISPIMRIP802.1d bridging802.1ax Link Aggregation Control Protocol802.1AB Link Layer Discovery ProtocolRFC 1812 IP routing802.1d Spanning Tree Protocolmessagingsignallingdatabasescommand line interface techniquesethernet bridgingroutingnetworking

Optional skills

RIPOSPFBGPIS-ISPIM802.1d bridging802.1d Spanning Tree Protocol802.1ax Link Aggregation Control Protocol

What you'll do

  • Write functional specifications and design specifications for features related to forwarding traffic on the internet and cloud data centers.
  • Independently implement solutions to small-sized problems in EOS software using C, C++, and Python.
  • Write test plan specifications for small-sized features in EOS.
  • Implement automated test programs to execute the cases described in the test plan.
  • Debug problems found by automated test programs and fix the problems.
  • Work on a team implementing, testing, and debugging solutions to larger routing protocol problems.
  • Work with Customer Support Engineers to analyze problems in customer networks and provide fixes as new software releases or software patches when needed.
  • Work with System Test Engineers to analyze problems found in their tests and provide fixes.
  • Mentor new and junior engineers in Arista’s software development environment.
  • Review and contribute to specifications and implementations written by other team members.
  • Help create a schedule for implementation and debugging tasks, update it weekly, and report it to the project lead.
  • Own projects from definition to deployment and be responsible for the quality of delivered work.
  • 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.
  • Independently implement solutions to small-sized problems in our EOS software, using the C, C++, and python programming languages.
  • Write test plan specifications for small-sized features in EOS, and implement automated test programs to execute the cases described in the test plan.
  • Mentor new and junior engineers to bring them up to speed in Arista’s software development environment.
  • Help to create a schedule for the implementation and debugging tasks, update that schedule weekly, and report it to the project lead.

What they require

  • BS in Computer Science, Electrical Engineering, or Computer Engineering plus 8 years experience, or MS in Computer Science, Electrical Engineering, or Computer Engineering plus 6 years experience, or Ph.D. in Computer Science, Electrical Engineering, or Computer Engineering plus 3 years experience, or equivalent work experience.
  • Knowledge of C, C++, and/or Python.
  • Knowledge of UNIX or Linux.
  • Strong and broad software engineering fundamentals.
  • Ideally a good understanding of networking including L2, L3, and fundamentals of commercial switching hardware.
  • Understanding of L2/L3 networking including at least one of IP routing protocols, Layer 2 features, packet forwarding engine and vendor-provided hardware software libraries, or infrastructure functions related to distributed systems.
  • Ability to utilize, test, and debug packet forwarding engine and a hardware component’s vendor-provided software libraries in solutions.
  • Preferred: Hands-on experience in the design and development of ethernet bridging or routing related software or distributed systems software.
  • Hands-on experience with enterprise or service provider class Ethernet switch/router system software development, or significant PhD-level research in network routing and packet forwarding.
  • 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 it without outside help.
  • Ability to work on a small team solving a medium-sized problem with limited oversight.
  • 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 the following: 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.
  • 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
  • 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 802.1d bridging, the 802.1d Spanning Tree Protocol, the 802.1ax Link Aggregation Control Protocol, the 802.1AB 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, signalling, 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.
  • 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

  • Discretionary Arista bonuses and equity may be available for certain roles.
  • Medical benefits.
  • Dental benefits.
  • Vision benefits.
  • Wellbeing benefits.
  • Income protection.
  • Group Retirement Savings Plan.
  • medical, dental, vision, wellbeing, income protection and a Group Retirement Savings Plan.
  • medical
  • dental
  • vision
  • wellbeing
  • income protection
  • Group Retirement Savings Plan

Arista Networks is an industry leader in data-driven, client-to-cloud networking for large data center, campus and routing environments, using cloud computing, artificial intelligence, and software-defined networking.

🇺🇸 United StatesNetworkingEnterprisearista.com/

What people say about this company

4.1/ 5

  • Employees appreciate the innovative and cutting-edge technology used at Arista.
  • The company culture is often described as collaborative and supportive.
  • Many employees highlight opportunities for professional growth and development.
$120k–$195k/yr