Metropolis is seeking a Senior Machine Learning Software Engineer to accelerate the development of our proprietary computer vision and machine learning software that powers our mobility products.
Requirements
- 5+ years experience in modern software design, development, version control, refactoring, and testing
- 5+ years of experience with C++17 onward and a strong understanding of object-oriented programming
- 3+ years of experience working with C++ OpenCV, SQLLite and MQTT.
- Experience in parallel computing, accelerator architecture, CUDA, Qualcomm DSP, and TensorRT libraries.
- Experience with ARM Cortex series microcontroller
Responsibilities
- Work with the Machine Learning Team to design, develop, improve, and optimize computer vision, machine learning and application software on edge devices using C++.
- Participate in all phases of embedded software development, from concept and design to deployment and maintenance.
- Identify top-level software requirements and establish development best practices.
- Deliver high-quality C++ code in a real-time embedded environment.
- Perform optimization on Machine Learning models targeting different hardware accelerators e.g. CUDA cores, Qualcomm DSP, etc.
- Implement, manage, and support over-the-air software updates to edge systems.
- Communicate ideas and results effectively, verbally and in writing, to a wide range of technical and non-technical audiences.
Other
- BS, MS, or Ph.D. in a Computer Science and Engineering or relevant discipline.
- Excellent written and verbal communication skills with a proven ability to present complex technical information in a clear and concise manner to a variety of audiences
- Previous experience working inside innovative, high-growth environments
- Strong preference for candidates to be local to the Seattle area. Will also consider candidates in Los Angeles, Seattle, and New York.