Так, как у этого тестового больше деталей чем в части Research Scientist, я поделю его на блоки, дав содержание.

В каждом разделе описаны подробности о рекомендательной системе которую я предлагаю. Если вам понятны отдельные части, их можно скипаю, так или иначе рекомендую прочитать их все. Хоть частей и много, я постараюсь описать их максимально сжато и эффективно, чтобы не затруднять понимание решения.

В общем, пользуйтесь

Часть 1. Пререквезиты

Часть 2. Проблемы (особенности)

Часть 3. Подходы, решение проблем. Финальная сборка