If you are the successful candidate, you will get to work on a system that requires strict timing tolerances under heavy loads, novel approaches to displaying content, and much more. You will get to make tough technical decisions that help shape the direction of our product.
As the ideal candidate, you will have a significant track record of working on embedded device drivers.
Part of team to deliver full Platform SW to rest of Magic Leap SW team, this includes writing drivers for all needed hw peripherals, writing the sw to boot the Operating System (including memory initialization, and platform initialization).
Develop SW to test system functionality for use in debugging issues and factory validation.
Debug Timing, Race Conditions, Memory issues on a daily basis in a timely manner, and may include use of JTAG debuggers, logic analyzers, etc.
May have to travel to factory to debug HW-SW issues onsite in order to build Magic Leap hardware with quality and deliver units on time to various other teams.
Work with other teams: HW, apps SW, middleware SW to debug cross-functional issues such as memory corruption, timing issues, and performance issues. Write detailed reports on the problem statement and how it was solved to be used as reference for future issues.
Fluent in the C language
Experience with embedded development practices
Experience desired in Linux and other micro kernels, with sensitivity to performance, memory utilization, and extensible architectures
Experience in designing and implementing asynchronous or concurrent multithreaded systems
Must understand common protocols for communication with hardware and other software modules
Must be a good communicator and self-motivated to complete projects, and enjoy hw-sw debugging
Experience with real-time and time-critical systems
Experience in a high-volume production environment
Experience with commonly-used mobile operating systems (i.e. Android or iOS)
Experience with using jtag / jlink debuggers, logic analyzers and other debuggers
Experience in writing drivers for various peripherals over various interfaces: UART, I2C, SPI, USB
Experience with machine vision
Experience with Bluetooth and/or Bluetooth Low Energy (BLE)
Experience with cameras and Image Signal Processing (ISP)
Ability to work directly with hardware team for device bringup and debugging a plus
Experience with embedded databases or interprocessor communication layers is a plus
Factory testing process experience is a plus
BA/BS is required
MS or higher is preferred
All your information will be kept confidential according to Equal Employment Opportunities guidelines.