Bachelor's degree in Computer Science, a related technical field, or equivalent practical experience.
5 years of experience with software development in one or more programming languages, and with data structures/algorithms.
3 years of experience testing, maintaining, or launching software products, and 1 year of experience with software design and architecture.
Experience in system software development (e.g., firmware, BIOS, BSP, Linux kernel, BMC, device drivers, and system libraries).
Experience in Unix/Linux environments and embedded Linux.
Experience coding in C/C++.
Preferred qualifications:
Master's degree or PhD in Computer Science, Electrical Engineering, or a related technical field.
Experience in Linux kernel internals such as CPU scheduling, memory management, block layer and file system.
Experience in the Baseboard Management Controllers (BMC) (i.e., AMI BMC or OpenBMC) development, machine management software development or Linux kernel development.