Senior Machine Learning Software Engineer
Metropolis
·
Posted:
April 27, 2023
·
Onsite
About the position
Metropolis is seeking a Senior Machine Learning Software Engineer to accelerate the development of their proprietary computer vision and machine learning software that powers their mobility products. The right candidate will possess a strong background in C++ and OpenCV, experience with model inference on edge systems, and demonstrated experience taking ML systems from concept to production. The responsibilities of the role include designing, developing, improving, and optimizing integrated ML model inference software on edge devices using C++, participating in all phases of embedded software development, and delivering high-quality C++ code in a real-time embedded environment. The ideal candidate should have 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. Metropolis is building an ecosystem of technologies at the intersection of parking, mobility, and real estate, and the Senior Machine Learning Software Engineer will play a key role in building and maintaining their culture as the organization grows.
Responsibilities
- Work with the Machine Learning Team to design, develop, improve, and optimize integrated ML model inference 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.
- 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.
Requirements
- BS, MS, or Ph.D. in a Computer Science and Engineering or relevant discipline.
- 5+ years experience in modern software design, development, version control, refactoring, and testing.
- 4+ years of experience with C++ and a strong understanding of object-oriented programming.
- 2+ years of experience working with OpenCV.
- Experience in parallel computing, accelerator architecture, CUDA, CUDNN, and TensorRT libraries.
- Experience with ARM Cortex series microcontroller.
- Experience deploying ML services to the cloud, including API development and design for scalability, performance, and reliability.
- 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, Nashville, and New York. Remote for exceptional situations.