
Senior/Lead Software Engineer, BIOS
Posted Jun 29

Posted Jun 29
This is a fully remote position, open to applicants in Canada.
• Design, develop, integrate, and maintain the low-level CPU software for Arista products.
• Create automated tests utilizing C, C++, and Python to validate your features.
• Collaborate with hardware engineers and vendors to qualify new CPUs and related components for Arista’s products.
• Monitor ongoing developments in the Linux Kernel and identify features and functionalities of interest for Arista’s products and internal development requirements.
• Engage with upstream open-source BIOS communities to contribute features back to the mainline.
• Review and contribute to functional and design specifications authored by fellow engineers.
• Collaborate with Customer Support Engineers and customers to analyze, mitigate, and resolve issues in customer networks.
• Work alongside System Test Engineers to analyze problems discovered during testing and provide solutions.
• Offer technical leadership across features, projects, and tools.
• Mentor new and junior engineers to help them acclimate to Arista’s software development environment.
• Bachelor’s degree in Computer Science, Electrical Engineering, or Computer Engineering with 8 years of experience; or a Master’s degree in the same fields with 6 years of experience; or a Ph.D. in Computer Science, Electrical Engineering, or Computer Engineering with 3 years of experience; or equivalent work experience.
• Required: expert knowledge and extensive experience programming in C.
• Knowledge of C++ and Python is preferred.
• Experience in designing and developing software for CPU firmware, BIOS, and boot loader environments.
• Experience with bringing up new CPU boards.
• Substantial hands-on experience in diagnosing issues, troubleshooting, and fixing bugs in low-level CPU firmware, BIOS, and boot loader software.
• Familiarity with the architecture, design, and implementation of the Linux kernel is preferred.
• Understanding of IP networking architecture, design, and principles is desirable.
• Practical understanding of modern software engineering principles and practices.
• Strong problem-solving and troubleshooting abilities.
• Proficient software design and implementation skills.
• Capacity to work independently as well as in small teams.
• Ability to communicate effectively and document designs and implementations clearly and concisely.
• Familiarity with and experience in working with x86 and ARM CPU architectures.
• Medical
• Dental
• Vision
• Wellbeing
• Income protection
• Group Retirement Savings Plan
AMERICAN SYSTEMS
TechnologyAdvice
Get handpicked remote jobs straight to your inbox weekly.