Comments 7
почему в таблице скилс FK на вакансии называется vacancy_id а в URL - просто id ?
Ну и таблицу skills стоило бы сделать отдельную. В ней напрашиваются свойства например та же группировка, чтобы "sql" и "сикуэл" группировать сразу в модели
в таблице vacancy нет смысла id вакансии дублировать в названии ключа vacancy_id. а в таблице skill ключ называется vacancy_id именно потому что это не id скила, а именно внешний ключ с id вакансии.
В группировке скилов в данной реализации смысла нет, т.к. уникальность считается по названию скила уже после стандартизации в витрине, поэтому "sql" и "сикуэл" будут посчитаны как 1 скил
А почему mobile версия отдельно? В настройках дашборда DataLens можно указать порядок отображения ленты при мобильной верстке:

Зарплату лучше считать медианную. Кроме навыков, еще важны и требования к опыту. А так направление выбрано правильное. Можно еще добавить количество просмотров для понимания конкуренции.
Даниил, благодарю за ценный и структурированных анализ! Взял для себя кое-что новое!
По устранению первой проблемы - может быть можно ли как-то подвязать в логику проекта критерий обновления вакансий на hh? Если система увидит, что одна из уже добавленных по id вакансий обновлена, то заново подтянет данные...
Анализ навыков data-специализаций в вакансиях HH.ru