What are machine learning engineers?
2018 Jul 22A clever definition from O’Reilly Data Blog.
- They have stronger software engineering skills than typical data scientists. Machine learning engineers are able to work with (and sometimes sit on the same teams as) engineers who maintain production systems. They understand software development methodology, agile practices, and the full range of tools that modern software developers use: everything from IDEs like Eclipse and IntelliJ to the components of a continuous deployment pipeline.
- Because their focus is on making data products work in production, they think holistically and factor in components like the logging or A/B testing infrastructure.
- They are up to speed on issues that are specific to monitoring data products in production. There are many resources on application monitoring, but machine learning has requirements that go even further. Data pipelines and models can go stale and need to be retrained, or they might be attacked by adversaries in ways that don’t make sense for traditional web applications. Can a machine learning system be distorted by compromising the data pipelines that feed it? Yes, and machine learning engineers will need to know how to detect these compromises.
- The rise of deep learning has led to a related but more specialized job title: deep learning engineer. We have also come across “DataOps,” though there seems to be less consensus (so far) as to what the term means.