Arista Networks is hiring a

Graduate/Intern Software Engineer

Internship

Who you'll work with

The Routing team who work on the core logic of the network that decides on how packets traverse the network in the most optimal and resilient manner.

Arista Networks is looking for Graduate Engineers interested in learning world leading product development in C/C++, Go and other languages. Join us at Arista Networks advancing the Software Defined Networking (SDN) revolution. 

What You’ll Do 

  • Writing Linux user space and kernel code to allow 32-bit drivers to DMA 64-bit virtual memory spaces using both Intel and AMD IOMMU controller.
  • Working on the hardware/software boundary for chips and the kernel. Where an x86 chip might have tens of registers, you will routinely work on ASICs with thousands of registers, tables, and special TCAM memories. You will program networking chips to provide latency analysis and keep accurate counts of events happening billions of times per second. You will write Python to bootstrap new hardware. You will build software agents that mediate and translate between the requirements of switching ASICs, high capacity custom FPGAs, media adapters, and PCIe bridges. You might tune lasers and measure and correct error rates measured in parts per billion. 
  • Implementing communications protocols between routers and switches at layer 2 (such as LLDP, 802.1x, BFD, etc), and layer 3 (such as BGP, OSPF, ISIS).
  • Updating the forwarding state of the hardware, using platform-independent abstractions.
  • Reconciling the linux kernel routing model with the switch's forwarding state.
  • Implementing a policy language used for filtering and manipulating routing data received and advertised to peers
  • Accessing ASIC registers over SPI bus, SMbus, PCIe and I2C, to implement high resolution timers (sub-100ns accuracy) and read ASIC hardware specifications to gather near-real-time information on large numbers of packet flows and to generate network congestion statistics.
  • Developing configuration management services using Go and Python to support YANG, OpenConfig, NETCONF and RESTCONF over gRPC, ssh and ssl for standardised switch configuration, combined with tools such as git, gerrit, Jenkins, Slack and Trello.
  • Developing routing protocol agents (for BGP, OSPF, ISIS) in C/C++ within a Fedora Linux embedded environment. Coding of fault-tolerant, concurrent agents capable of handling the demands of future data centres where high performance and high availability are basic requirements. Fully automated, developer owned, Python based, continuous test harness with 100s of devices under test at any one moment.

Any of the following:- C, C++, Java, Python, Go, react.js, redux.js, node.js Networking, Linux Embedded Systems, Algorithms, Programming, Software Development.

Apply for this job

Please mention you found this job on AI Jobs. It helps us get more startups to hire on our site. Thanks and good luck!

Get hired quicker

Be the first to apply. Receive an email whenever similar jobs are posted.

Ace your job interview

Understand the required skills and qualifications, anticipate the questions you may be asked, and study well-prepared answers using our sample responses.

Software Engineer Q&A's
Report this job
Apply for this job