Arista Networks logo
["Networking","Hardware","Software","Cloud Computing"]

Senior/Lead Software Engineer, Packet Forwarding

Nashua, NHOnsiteFull TimeLeadPosted 1 month agoVisa sponsorship available

Is this role right for you?

Upload your resume and get a skill-by-skill breakdown — see exactly where you match, where you're close, and what to highlight. Not a mystery percentage.

Get a tailored resume highlighting what this role needs.

Required skills

  • C++
  • Python
  • UNIX
  • Linux
  • IP networking
  • distributed systems
  • software engineering principles
  • software troubleshooting
  • implementation
  • customer interaction

Nice to have

  • Packet Forwarding chips
  • Packet Forwarding pipelines
  • EOS
  • routing table
  • forwarding chips
  • milliseconds of downtime

Role summary

Arista Networks is seeking Senior/Lead Packet Forwarding (PFE) Software Engineers to design and build novel packet forwarding features for their EOS operating system. This role involves deep understanding of packet forwarding architecture, designing data structures and algorithms for efficiency and scale, and applying software engineering principles to solve complex problems in areas like zero-downtime upgrades and large-scale routing tables. Responsibilities include feature definition, architecture, design, development using C, C++, and Python, testing, and customer interaction. The role requires strong problem-solving, troubleshooting, and technical leadership skills, with opportunities for mentorship and growth within a supportive engineering culture.

Who You'll Work With

Arista Networks is looking for world-class Senior/Lead Packet Forwarding Engine (PFE) Software Engineers.

As a Senior/Lead PFE Software Engineer, you will collaborate and work with customers, product management and engineers to design and build novel packet forwarding features in EOS that help networks run effectively and efficiently. You will need to understand the packet forwarding architecture in depth and figure out how to apply it optimally to solve customer problems. You will design the packet forwarding flow, design data structures and algorithms to render the packet forwarding state used by the forwarding engine for efficiency and scale, and tie it all together with the higher layers. 

In this role, you will get to confront complex, multi-dimensional problems such as

“Upgrade software on a switch with no more than a few milliseconds of downtime” “Render a routing table with >1M routes into the forwarding path on a router with a hundred forwarding chips”

 that are open ended, challenging, fun and require strong problem solving skills.

Arista Software Engineering roles demand a strong and broad software engineering background. While the primary focus area for this role is packet forwarding, the role will cover all aspects of software development spanning the addition of new features, debugging problems and fine tuning code for scalability and performance. You will own your projects from definition to deployment and customer interactions, and you will be responsible for the quality of everything you deliver.

Arista Software Engineering prides itself on a supportive and growth oriented culture. Over time, as your interests change, coupled with evolving business needs you will have the opportunity to switch from packet forwarding to other areas, if you like.

What You’ll Do

  • Interface with customers and product management to define packet forwarding features and solutions.
  • Architect, design and manage the development of these features.
  • Develop and maintain features using C, C++ and Python, review and contribute to functional and design specifications. Build automated tests and test infrastructure to test the features.
  • Provide technical leadership across features, projects and tools.
  • Work with Customer Support Engineers and customers to analyze, mitigate and fix problems in customer networks.
  • 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.
  • 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
  • Expert knowledge of C or C++ and Python.
  • Knowledge of UNIX or Linux
  • Understanding of IP networking and/or distributed systems
  • Experience working with packet forwarding chips and pipelines is a plus
  • Applied understanding of software engineering principles
  • Strong problem solving and software troubleshooting skills
  • Ability to design a solution and implement features independently.
  • Ability to work in small teams.

#LI-SZ1

Arista Networks is an equal opportunity employer. Arista makes all hiring and employment-related decisions in a non-discriminatory manner without regard to race, color, religion, sex, sexual orientation, gender identity, national origin or any other factor determined to be unlawful under applicable federal, state, or law law. All your information will be kept confidential according to EEO guidelines.

Arista Networks is an industry leader in data-driven, client-to-cloud networking for large data center, campus and routing environments. What sets us apart is our relentless pursuit of innovation. We leverage the latest advancements in cloud computing, artificial intelligence, and software-defined networking to provide our clients with a competitive edge in an increasingly interconnected world. Our solutions are designed to not only meet the current demands of the digital landscape but to also anticipate and adapt to future challenges.

At Arista we value the diversity of thought and perspectives that each employee brings to the table. We believe that fostering an inclusive environment, where individuals from various backgrounds and experiences feel welcome, is essential for driving creativity and innovation.

Our commitment to excellence has earned us several prestigious awards, such as Best Engineering Team, Best Company for Diversity, Compensation, and Work-Life Balance. At Arista, we take pride in our track record of success and strive to maintain the highest standards of quality and performance in everything we do.

Sample Arista Networks interview questions

  • 1

    Architect a platform for handling data migrations in distributed systems.

    system designmedium
  • 2

    Implement a Trie for prefix matching. Input: insert("hello"), startsWith("hel") Output: TRUE. Explanation: Traverses the Trie nodes to confirm that the prefix "hel" actively exists within the inserted word "hello".

    codingmedium
  • 3

    Diameter of a Binary Tree Find the diameter of a binary tree. Input: root = [1,2] Output: 1 Explanation: The longest path is simply the single edge connecting the root node to its only child.

    codingmedium
  • 4

    Iterator over a Binary Search Tree Implement an iterator over a binary search tree. Input: root = [7,3,15,null,null,9,20], calls: next(), hasNext(), next() Output: 3, TRUE, 7 Explanation: The iterator yields the smallest value (3), confirms more nodes exist, then properly yields the next in-order value (7).

    codingmedium
  • 5

    Sort a String by Frequency Sort a string by the frequency of its characters. Input: s = "cccaaa" Output: "cccaaa" or "aaaccc" Explanation: Both 'c' and 'a' appear three times, so sorting them by descending frequency keeps them grouped equally.

    codingmedium

Get started to unlock a personalized interview prep pack for this role.

Ready to apply?
You'll be redirected to Arista Networks's application page.

Similar roles

See how RiseMe works

Match, tailor, and prep so you send fewer applications and land more interviews.