Ищем человека для постоянного сотрудничества, проектов очень много.

Требования

У каждого сотрудника есть свойство множественного выбора Специализация

У каждого сотрудника есть свойство чекбокс "Исключить из проф. опроса"

Сотрудник может иметь несколько специализаций, каждая специализация может иметь привязку к нескольким Курсам.

Создаются одиночные тесты для вопросов, которые не имеют таких тестов

Каждую неделю в случайный день сотрудник получает 1 вопрос из тех, которые относятся к его специализации. Кроме тех сотрудников, у которых выставлена галка "Исключить из проф. опроса".

Требования родительской задачи о добавлении результата опроса в Досье и возможность запроса по API

Каждый день с понедельника по пятницу срабатывает следующий алгоритм (именно в такой последовательности):

Осуществляется проверка наличия по каждому Курсу привязанному к Специализациями, что все Вопросы имеют Одиночный тест. Если такого теста нет, он создаются. В названии теста ID вопроса, в самом тесте только один этот вопрос.

Каждому сотруднику, если не установлено свойство "Исключить из проф. опроса", назначается один из Одиночных тестов, если в течении этой недели не было назначено тестов. День когда будет назначен тест на неделе определяется случайным образом.

Для определения того, какой Одиночный тест назначить необходимо проанализировать список Специализаций сотрудника, найти по ним все связанные курсы и полуить набор Одиночных тестов.

Из выбранных Одиночных тестов исключаются те, которые сотрудник уже успешно прошел.

Среди оставшихся Одиночных тестов выбирается случайным образом один и назначается сотруднику.

Сотруднику приходит уведомление о назначении теста и ссылки для перехода и проходения теста. (в идеале этот пункт звучит как "В уведомлении ссылка на прохождение теста, при клике на которую открывается модальное окно с вопросом теста. После ответа на вопрос, модальное окно показывает результат ответа и его можно закрыть").

Результаты публикуются в Досье (инфоблок №59 "События сотрудника") отдельным сообщением той датой, которой был пройден тест. В сообщении должно быть указано успешно ли был пройден тест и ссылка на результат прохождения теста.

Результаты прохождения тестов доступны по API в формате json, в рамках задачи необхдимо опубликовтать интерфейс и приложить к задаче описание этого интерфейса - поля, пример запроса и ответа.

Специализации (список можно расширять, привязкой к курсам можно управлять из административной панели):

Разработчик php (COURSE_ID=14)

Разработчик symfony

Разработчик yii

Разработчик java (COURSE_ID=15)

Разработчик spring

Разработчик swift

Разработчик kotlin

Разработчик golang

Разработчик javascript

Разработчик react

Тимлид

Тестировщик

Системный администратор

DevOps

Руководитель проектов

4 года назад
Николай
 
48 лет
4 года в сервисе
Был
3 года назад

Заявки фрилансеров

Нет заявок фрилансеров