Senior, Embedded Software Engineer
Magic Leap is seeking a Senior Embedded Software Engineer responsible for developing Bluetooth connectivity and controller tracking components for the Magic Leap platform, including creating and implementing algorithms to solve dynamic problems. Engineers in this position will be developing framework level software for high volume enterprise devices, in the domain of Bluetooth Connectivity. Potential candidates must demonstrate technical leadership skills and be the best team player, as well as, be able to work in an environment with interdisciplinary teams.
- Architect, design and develop Bluetooth Classic and BLE software components for Magic Leap's proprietary products
- Develop software components related to the controller tracking system.
- Perform code review, code optimization, refactoring, bug hunting, and bug fixing
- Produce unit, functional, integration and interoperability tests, including automating tests when advantageous
- Analyze RF, Firmware issues using sniffer tools and work with vendors to fix them
- Write technical documents, including white papers, architecture diagrams, modules and API description.
- 5+ years of Software experience on embedded platforms such as Linux Android
- Strong experience and knowledge in C/C++/Java
- Embedded Software Development experience is a plus
- Strong Computer Science fundamentals in object-oriented design, data structures and complexity analysis
- Experience with Bluedroid, BlueZ and/or other Bluetooth stacks, Android, embedded Bluetooth solutions is highly desired
- Strong knowledge on Bluetooth profiles such as HFP/A2DP/MAP/HID and BLE GATT, Hearing Aid profiles is highly desired
- Bluetooth Software debugging experience with Bluetooth sniffer tools, protocol analyzers
- Experience with Linux Inter-process Communication(IPC) & Multi-threading programming
- Experience with Android services & GNU Makefiles, ADB, shell scripts is a plus
- Experience with version control & continuous integration tools: Git/repo, Gerrit
- Good to have low level software debugging skills using gdb, emulators, JTAG etc
- Knowledge on performance and power optimization
- Strong communication skills; excellent technical communication with peers
- BA/BS is required
- MS or higher is preferred
- All your information will be kept confidential according to Equal Employment Opportunities guidelines.