This position is for a Senior, Software Engineer working in Magic Leap’s Perception team. The potential candidate will be responsible for developing and optimizing perception algorithms on embedded platforms and on cloud. Improving framework to enhance test coverage, visualization tools, code deployment, and performance analysis and optimizations. The candidate will be working on programming DSP cores, integrating the perception algorithms with Magic Leap OS and validating the API interfaces.
- Design, implement, integrate, and validate perception algorithms in C++.
- Analysis and optimization of the perception software stack for GPU, ARM, DSP or similar architectures.
- Design and develop framework tools to increase code coverage, unit test cases, and metrics collection.
- Own and drive highly visible performance metrics (e.g. latency, memory, bandwidth, power)
- Contribute by writing code for the development of visual, inertial and depth-based algorithms for 3D reconstruction, scene understanding and map merge solutions.
- Provide mentorship to more junior software engineers, technicians and interns within the computer vision group by reviewing their code, written documentation and having regular meetings.
- Work hand-in-hand with all the key stakeholders and developers across the company such as the broader perception algorithms teams both on device and on cloud. This will involve integrating their code with frameworks developed by other teams and ensuring end-to-end functionality on Magic Leap products.
- 3+ years of professional experience with strong CS fundamentals, data structures and algorithms, problem-solving, high quality coding, code optimization, memory optimization, performance analysis, understanding of abstraction and modularity, critical path optimization and tuning.
- 3+ years of strong programming skills in C++.
- Experience with low latency / high bandwidth real-time data pipelines, Multi-Process / Multi-threaded pipelines, batch data processing pipelines, low power embedded systems, integration of specialized hardware acceleration blocks, data coherency, caches.
- Experience with version control and source code practices like git, repo, and code reviews.
- Analysis and optimization of the perception software stack for GPU, ARM, DSP or similar SIMD/VLIW architectures is a plus.
- Experience with Python is a plus
- Experience in deploying Deep Learning models in production environments is a plus.
- Knowledge of 3D reconstruction concepts, such as structure from motion, pose estimation, and localization, is a plus
- Knowledge of working with meshes and 3D geometry applied to meshes is a plus
- Experience working with OpenCV is a plus
- BA/BS in CS, EE or similar required. MS, Ph.D. preferred
- All your information will be kept confidential according to Equal Employment Opportunities guidelines.
Location: Sunnyvale, CA
Country: United States