As a Computer Vision Software Engineer, you'll be responsible for delivering high-performance production software with state-of-the-art computer vision capabilities. Your code will be part of the foundations of our 3D platform that enables the next generation of computing applications for many years to come.
- Develop state-of-the-art performance critical perception systems
- Own and drive highly visible performance metrics (e.g. latency, memory, bandwidth, power)
- Collaboratively work as part of a fast paced team, analyze and optimize a growing C++ codebase
- Help define performance standards for algorithms, develop and drive best practices (performance, maintainability, correctness, etc), provide guidance at all stages of the software development cycle and share knowledge
- Help drive the integration and development of necessary tooling and automation (profiling, testing/verification, monitoring, etc) that allows the team to move even faster
- Help drive computing platforms for next generation products
- 3+ years of professional experience with high performance / low latency applications with modern C++ and assembly languages
- General understanding in Geometric Computer Vision
- Experience with low latency / high bandwidth real-time algorithm pipelines and their runtime optimization (e.g. SIMD)
- Strong CS fundamentals, problem-solving, high quality coding, code optimization, memory optimization, performance analysis, understanding of abstraction and modularity, critical path optimization and tuning
Preferred / additional skills:
- Geometric Computer Vision Experience (e.g. SLAM, VIO, 3D Reconstruction, etc.)
- Image processing
- Numerical computing
- BA/BS in CS, EE or similar required. MS or Ph.D. preferred.