Bachelor’s degree or equivalent practical experience.
2 years of experience with software development in one or more programming languages, or 1 year of experience with an advanced degree.
2 years of experience with working with embedded operating systems.
Preferred qualifications:
2 years of experience with data structures or algorithms.
Professional coding experience in unmanaged language (Rust, C, C++).
Experience working with operating systems, computer architecture, embedded systems and Linux/Unix kernel, etc.
Experience developing and designing large software systems.
Experience with System Software in any of the following areas - ARM/ARM64 architecture, compilers, firmware, Operating systems, Linux kernel, filesystems/storage, device drivers, performance tuning, networking, tools, tests, virtualization, platform libraries, etc.