
Staff Software Engineer, Machine Learning
Role summary
The Machine Learning Engineering (MLE) team is seeking a Staff Software Engineer to build and scale production ML systems. This role involves collaborating with Product Engineering, Data Science, and Platform teams to deploy ML models across various domains using a microservice architecture. You will leverage ML-specific technologies like MLflow and ONNX, advise on ML initiatives, ensure code quality, and enhance system architecture. The position requires strong computer science fundamentals, proficiency in at least one programming language (Java, Python, Go, or C), and experience with logging, monitoring, and alerting. You will also lead projects and mentor other engineers, contributing to a dynamic and growing car-sharing platform.
About The Team
The Machine Learning Engineering (MLE) team works with the Platform team and the Data Science team to deploy machine learning models to production using microservice architecture with high availability and scalability. We host numerous models spanning many different domains that help create a world class car sharing platform.
As a Staff Software Engineer on the MLE team, you'll build the platform that turns our Data Science innovations into scalable production systems, enabling rapid model iteration and deployment across new applications.
What You Will Do
- Collaborate with Product Engineering to help integrate Machine Learning models throughout the product experience (E.g. Pricing, Search Ranking)
- Collaborate extensively with Data Science and Platform to build tools and systems that enable fast iteration on our existing models, and deployment of new models.
- Use ML specific technologies like MLflow for model storage, Chalk.AI for feature storage and retrieval, and ONNX for cross-platform model evaluation.
- Working closely with Data Science to advise on the feasibility and complexity of new ML initiatives.
- Generate maintainable, high-quality code, conduct thorough testing, engage in collaborative code reviews, and oversee the shipping process.
- Identify opportunities for enhancing and scaling our architecture and application design.
- Create tools and utilities for diagnosing and resolving issues within the system
- Ensure proper technical design and documentation.
- Operate effectively in a dynamic and expanding environment, adapting to constant change, where fluid processes and creative solutions are valued.
- Apply your skills to elevate the technical standards and provide guidance on architectural decisions
- Lead significant projects and concurrently provide mentorship to fellow team engineers.
Your Profile
- 7+ years experience shipping high-scale code to production.
- Fluent in at least one language - e.g., Java, Python, Go, or C
- Possess strong computer science fundamentals: data structures, algorithms, database concepts, distributed systems, and search.
- Strong communicator. Explaining complex technical concepts to designers, support, and other engineers is no problem for you.
- Enjoy solving problems and helping others meet their goals.
- Experience with logging, monitoring and alerting systems and tools.
- Passionate about Machine Learning/AI, Streaming, Databases or other backend technologies.
Bonus If You Have
- Bachelor's/Master’s degree or equivalent in Computer Science or related field
- Curious about container orchestration systems such as kubernetes and infrastructure as code tools such as terraform.
The SF base salary target range for this full-time position is $182,000-$228,000 + equity + benefits. Our salary ranges are determined by role, level, and location. The range displayed on each job posting reflects the minimum and maximum target for new hire salaries for the position in San Francisco, CA. Within the range, individual pay is determined by work location and additional factors, including job-related skills, experience, and relevant education or training. Your recruiter can share more about the specific salary range for your work location during the hiring process.
Turo highly values having employees working in-office to foster a collaborative work environment and company culture. This role will be in-office on a hybrid schedule — Turists will be expected to work in the office 3 days per week on Mondays, Wednesdays, and Thursdays. Turo considers working in the office at least 3 days per week to be an essential function of this hybrid role. Your recruiter can share more information about the various in-office perks Turo offers.
Turo AI Policy
Turo may use AI-enabled tools to support our recruiting operations, including gathering information from candidates, drafting communications, helping with interview note-taking and assessment, and so on. These tools only supplement our team; all decisions to advance or hire candidates are made by Turo employees. While we welcome candidates to use AI-enabled tools to help prepare for their interviews, the use of such tools, including any AI chatbots or note-takers, is not permitted during live interviews or technical assessments. We want to see how you consider and solve problems in real-time, so interviews and assessments are all you (unless we indicate otherwise and ask you specifically to use an AI-enabled tool to answer a question). If during the application process you require the use of an AI-enabled tool as a reasonable accommodation for a disability, please let us know at PeopleOps@turo.com.
Benefits
- Competitive salary, equity, benefits, and perks for all full-time employees
- Employer-paid medical, dental, and vision insurance (Country specific)
- Retirement employer match
- Learning & Development stipend to invest in your professional development
- Turo host matching program
- Turo travel credit
- Cell phone and internet stipend
- Paid time off to relax and recharge
- Paid holidays, volunteer time off, and parental leave
- For those who are in the office full-time or hybrid we have in-office lunch, office snacks, and fun activities
We are committed to building a diverse team. If you are from a background that's underrepresented in tech, we'd love to meet you.
Aside from an award winning work environment and the opportunity to be part of the world’s largest car sharing marketplace, we are also growing the team quickly - join us! Even if you don't meet every qualification, we are looking for people with enthusiasm for what we do and we will consider you for this and other possibilities.
About Turo
Turo is the world’s largest car sharing marketplace where you can book the perfect car for wherever you’re going from a vibrant community of trusted hosts across the US, UK, Canada, Australia, and France. Whether you're flying in from afar or looking for a car down the street, searching for a rugged truck or something smooth and swanky, Turo puts you in the driver's seat of an extraordinary selection of cars shared by local hosts.
Discover Turo at https://turo.com, the App Store, and Google Play, and check out our blog, Field Notes.
Read more about the Turo culture according to Turo CEO, Andre Haddad.
Turo is an Equal Opportunity Employer and a participant in the U.S. Federal E-Verify program. Women, minorities, individuals with disabilities and protected veterans are encouraged to apply. We welcome people of different backgrounds, experiences, abilities and perspectives.
Turo will consider qualified applicants with criminal histories in a manner consistent with the San Francisco Fair Chance Ordinance, as applicable.
We welcome candidates with physical, mental, and/or neurological disabilities. If you require assistance applying for an open position, or need accommodation during the recruiting process due to a disability, please submit a request to People Operations by emailing PeopleOps@turo.com.
Sample Turo interview questions
- 1
Valid Word Abbreviation Determine if a string matches a valid word abbreviation. Input: word = "apple", abbr = "a2e" Output: FALSE Explanation: The abbreviation claims exactly 2 characters are skipped between 'a' and 'e', but "ppl" is actually 3 characters long.
technicalmedium - 2
Dot Product of Two Sparse Vectors Calculate the dot product of two sparse vectors. Input: nums1 = [0,1,0,0,2], nums2 = [0,0,0,0,5] Output: 10 Explanation: Multiplies the aligned non-zero values (2 * 5) and ignores all the zeros, yielding a dot product of 10.
technicalmedium
Sign up for a personalized interview prep pack tailored to this role.
Similar roles
- Senior Software Engineer, Machine LearningAnduril · Washington, District of Columbia, United States · Onsite
- Senior Software Engineer, Machine LearningReddit · San Francisco, California, United States · Remote
Staff Software Engineer, Machine LearningSnap Finance · United States · Onsite
Staff Software Engineer, Machine LearningCleerly · New York, United States · Remote
Software Engineer, Machine LearningGoogle · Mountain View, California, United States · Hybrid