We’re living in a phenomenal moment for machine learning (ML), what Sonali Sambhus, head of developer and ML platform at Square, describes as “the democratization of ML.” It’s become the foundation of business and growth acceleration because of the incredible pace of change and development in this space.
But for engineering and team leaders without an ML background, this can also feel overwhelming and intimidating. I regularly meet smart, successful, highly competent and normally very confident leaders who struggle to navigate a constructive or effective conversation on ML — even though some of them lead teams that engineer it.
Integrating ML teams effectively into the business starts with an understanding of what makes the right candidate and how to structure the team for maximum velocity and focus.
I’ve spent more than two decades in the ML space, including work at Apple to build the world’s largest online app and music store. As the senior director of engineering, anti-evil, at Reddit, I used ML to understand and combat the dark side of the web.
For this piece, I interviewed a select group of successful ML leaders including Sambhus; Lior Gavish, co-founder at Monte Carlo; and Yotam Hadass, VP of engineering at Electric.ai, for their insights. I’ve distilled our best practices and must-know components into five practical and easily applicable lessons.
1. ML recruiting strategy
Recruiting for ML comes with several challenges.
The first is that it can be difficult to differentiate machine learning roles from more traditional job profiles (such as data analysts, data engineers and data scientists) because there’s a heavy overlap between descriptions.
Secondly, finding the level of experience required can be challenging. Few people in the industry have substantial experience delivering production-grade ML (for instance, you’ll sometimes notice resumes that specify experience with ML models but then find their models are rule-based engines rather than real ML models).
When it comes to recruiting for ML, hire experts when you can, but also look into how training can help you meet your talent needs. Consider upskilling your current team of software engineers into data/ML engineers or hire promising candidates and provide them with an ML education.
The other effective way to overcome these recruiting challenges is to define roles largely around:
- Product: Look for candidates with a technical curiosity and a strong business/product sense. This framework is often more important than the ability to apply the most sophisticated models.
- Data: Look for candidates that can help select models, design features, handle data modeling/vectorization and analyze results.
- Platform/Infrastructure: Look for people who evaluate/integrate/build platforms to significantly accelerate the productivity of data and engineering teams; extract, transform, load (ETLs); warehouse infrastructures; and CI/CD frameworks for ML.