Magic Leap is an eclectic group of visionaries, rocket scientists, wizards, and gurus from the fields of film, robotics, visualization, software, computing, and user experience.
We are growing quickly, and this is the time to get on board and play a role in shaping the way people will be interacting with the world tomorrow.
Magic Leap is seeking a System Architect in embedded mobile operating systems. Provide your expertise to help us design, optimize, and develop an operating system capable of supporting the most optimal user experience ever seen.
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, realtime OS creation, and also computer architecture design especially on how it relates to SW performance: data flow, power management, and system performance.
- Architect, Design, Implement realtime OS framework for leading MagicLeap devices. Attention should be made to realtime performance, power management and the ability to run our computer vision software on embedded devices.
- Architect, Design, Implement, API enhancements for the Magic Leap platform. These will be specific to the Magic Leap platform and can enhance the performance of the device by providing optimized kernel and computer vision APIs to allow data to flow more efficiently. API changes will have to be documented to allow smooth integration with other software teams.
- Debug Timing, Race Conditions, Memory issues on a daily basis in a timely manner, and may include use of JTAG debuggers, logic analyzers, etc.
- Part of the team to deliver full platform software to the rest of the Magic Leap software organization, including architecting drivers for all needed hw peripherals, writing/designing the software to boot the Operating System (including memory initialization and platform initialization).
- Lead software and architecture of the design of the next generation custom ICs which will allow Magic Leap computer vision data and embedded algorithms to optimally run with minimal power management.
- Work with other teams: hardware, application software, and middleware 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.
- 8+ years experience in embedded software development
- Fluent in the C language
- Experience with embedded development practices
- Experience desired in Linux and other microkernels, with sensitivity to performance, memory utilization, and extensible architectures
- Experience in architecting drivers for various peripherals over various interfaces: I2C, SPI, USB, PCIE
- Experience with using jtag debuggers, logic analyzers and other debuggers
- 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 Computer Architecture Design
- 5-10 years Experience with real-time and time-critical systems
- Experience with machine vision
- Experience in a high-volume production environment
- Experience with commonly-used mobile operating systems (i.e. Android or iOS)
- 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