BIOS Senior/Lead Software Engineer
- Full-time
Company Description
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.
Job Description
Who You’ll Work With
Arista’s BIOS team is responsible for developing and maintaining the CPU firmware, BIOS and Boot Loader software used in all Arista products.. This work includes bringing up new CPU boards, getting EOS to boot securely, efficiently and reliably. This work also involves designing and implementing new features in EOS to manage and secure the low level system initialization and booting subsystems, as well as keeping pace with the latest developments in the open source and proprietary BIOS development communities.
Arista BIOS software engineers are also responsible for low level software driving the CPU subsystems on all Arista products. You will evaluate new CPUs and work with CPU vendors and BIOS vendors to integrate their low level firmware into Arista products. You will work closely with hardware engineers to bring up, validate and test new CPUs in our hardware products.
Arista Software Engineering roles demand a strong and broad software engineering background. While the primary focus area for this role is firmware, BIOS and booting software, your work will cover all aspects of software development spanning the design and development of new features, debugging problems and fine tuning code for reliability 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.
What You’ll Do
- Design, develop, integrate and maintain the low-level CPU software in Arista products.
- Develop automated tests using C, C++ and Python to validate your features.
- Work with hardware engineers and vendors to qualify new CPUs and related components for use in Arista products.
- Track ongoing developments in the Linux Kernel and identify features and functionality of interest to Arista for our products and for internal development needs.
- Work with upstream open source BIOS communities to contribute features back to the mainline.
- Review and contribute to functional and design specifications written by other engineers.
- 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.
- Provide technical leadership across features, projects and tools.
- Mentor new and junior engineers to bring them up to speed in Arista’s software development environment.
Qualifications
Qualifications
- 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 and extensive experience programming in C required. Knowledge of C++ and Python is desirable.
- Experience designing and developing software in CPU firmware, BIOS and boot loader environments.
- Experience bringing up new CPU boards.
- Significant hands-on experience diagnosing problems, troubleshooting issues, and fixing bugs in low-level CPU firmware, BIOS and boot loader software.
- Familiarity with Linux kernel architecture, design and implementation desirable
- Understanding of IP networking architecture, design and principles desirable
- Applied understanding of modern software engineering principles and practices
- Strong problem solving and troubleshooting skills.
- Strong software design and implementation skills.
- Ability to work independently and in small teams.
- Ability to communicate articulately, and document your designs and implementations clearly, and concisely.
- Familiarity with and experience working with the x86 and ARM CPU architectures
#LI-SP1
Additional Information
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.