Company Description
Arista Networks was founded to pioneer and deliver software-driven cloud networking solutions for large data center storage and computing environments. Arista’s award-winning platforms, ranging in Ethernet speeds from 10M to 400G bits per second, redefine scalability, agility and resilience. Arista has shipped more than 10 million cloud networking ports worldwide with CloudVision and EOS, an advanced network operating system. Committed to open standards, Arista is a founding member of the 25/50GbE consortium. Arista Networks products are available worldwide directly and through partners.
At the core of Arista's platform is the Extensible Operating System (EOS™), a ground-breaking network operating system with single-image consistency across hardware platforms, and modern core architecture enabling in-service upgrades and application extensibility.
Job Description
Arista leverages modeling languages to describe complex network and device state. Restartable microservices operate on the state transitions to control the behavior of the network device, for everything from switching on the front panel LEDs to programming routes into the ASIC. The microservices are completely unaware of each other and operate purely by reading and writing model state into NetDB. You will have the opportunity to work on the compiler to add various language features and enhancements to improve the development processes of hundreds of EOS developers that rely on the modeling language to develop their microservices and business logic.
You will get to work on problems like:
Responsibilities
Qualifications
BS Computer Science/Electrical Engineering/Computer Engineering + 5 years experience, or MS Computer Science/Electrical Engineering/Computer Engineering + 3 years experience, or Ph.D. in Computer Science/Electrical Engineering/Computer Engineering
Experience with compilers, parsers, and modeling languages such as YANG
Expert knowledge of C or C++ and Python
Understanding of distributed systems 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