We have reviewed both scientific literature and popular publications to identify about 30 software engineering best practices that were recommended or used by teams developing machine learning applications. The various practices are grouped into 6 categories, as illustrated in the diagram above.

Based on the identified practices, we created a 10-minute online survey that asks respondents to what extent they are adopting them.

Using the survey results, we ranked the practices based on three level of difficulty: basic, medium and advanced.

The ranking algorithm will be publicly available once the survey ends.

Until then, please help us by taking the survey. The more information we collect, the better the ranking.

Click here to take the survey

Also, feel free to recommend any practice we missed by creating a pull request in the project’s repository, comment on any practice using Disqus or Github.