Seeking an Embedded Software Engineer with experience in embedded, mobile devices (input/output & thermal control peripherals; in a high level/Linux like OS, & in a real time OS). Provide your expertise to help us engineer & optimize state of the art software for our next generation spatial computing device.
If you are the successful candidate, you will get to work on a system that requires inter-process & multi-core communications, strict power budgets under heavy loads, battery management, thermal control, Linux kernel drivers, middleware services, & much more. You will get to make technical decisions along with a high achieving team to help shape the direction of our product.
As the ideal candidate, you will have a significant track record of working on Linux/Android OS (Kernel & Userspace).
- Part of the team delivering full Platform SW to the rest of Magic Leap team, this includes Linux Kernel & real-time/embedded drivers. Also, middleware/userspace service layer
- Design & develop software drivers for peripherals (input & output systems), software services (thermal control, multi-core communications, buttons/illumination, etc); & the test system functionality for use in debugging issues & factory validation
- Debug peripherals issues that stem from: user input, dynamic & static power management, on a daily basis in a timely manner, & will include the use of lab equipment such as power supplies, oscilloscopes, etc
- Work with other teams (on-site & remote): HW, apps SW, middleware SW to debug cross-functional issues
- Write architecture, & design documents
- Generate detailed reports on how bugs/problems were solved to be used as a reference for future issues
- Strong C++ & C knowledge & skills
- Familiarity with multi-threaded systems, & real-time OS systems
- 3+ years hands-on programming experience
- 2+ years hands-on experience with in mobile devices kernel software layer
- Capable of reading & understanding Hardware Schematics
- Unix systems programming
- Experience with professional coding practices a must (code review, incremental & unit testing, Agile/Scrum type processes, etc)
- Excellent communication skills required
- Bootloader on multiple platforms experience a plus
- BA/BS in CS or EE is required, MS preferred
- All your information will be kept confidential according to Equal Employment Opportunities guidelines