Senior/Lead Software Engineer (Linux Kernel)
- Arista Software Engineering roles demand a strong and broad software engineering background
- While the primary focus area for this role is Linux Kernel software, your work 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
- Track ongoing developments in the Linux Kernel and identify features and functionality of interest to Arista for our products and for internal development needs
- Develop and maintain EOS Kernel features and tests using C, C++ and Python, review and contribute to functional and design specifications. Build automated tests and test infrastructure to validate the features
- Work with hardware engineers and vendors to qualify new Kernel dependent hardware components like CPUs and NICs for integration into Arista products
- Work with the Kernel community to contribute features back to the mainline
- Work with a team of Kernel engineers to integrate new versions of the Kernel for use in EOS and our internal development
- 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
Benefits
- Regular ”Snack Bash” Social Events with food and drinks!
- Biweekly Wellness webinars plus regular Wellness Week events focused on physical, mental, spiritual and financial wellness as well as career development and social activities
- Arista Gives Back: Employee Engagement Giving Drives and Volunteer events
- Medical, Dental & Vision Plan Coverage
- Life Insurance, AD&D, STD & LTD
- Flex Spending Accounts
- Employee Assistance Programs
- PTO & Paid holidays
- 401k Plan
- On-site Gym & Showers
- Secured Bike Lockers
- Secured Bike Lockers
- Flexible hours
- Employee Assistance Benefits that include mental health and backup child and elder care support
- Discounted lunches through WeBox for HQ employees
- Family planning benefits
- Significant hands-on experience troubleshooting issues, fixing bugs and developing features in the Linux kernel
- Ability to work independently and in small teams
- Familiarity with the upstream Linux community’s patching process and procedures
- Familiarity with Linux kernel architecture, design and implementation
- Expert knowledge of and extensive experience programming in C required. Knowledge of C++ and Python is desirable
- Strong problem solving and troubleshooting skills
- Ability to communicate articulately, and document your designs and implementations clearly, and concisely
- Understanding of IP networking architecture, design and principles
- Familiarity with the x86 and ARM CPU architectures
- Strong software design and implementation skills
- 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
- Applied understanding of modern software engineering principles and practices