alabuga/TZ_gamification_markdown.md
2025-10-02 20:32:18 +03:00

454 lines
23 KiB
Markdown
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Техническое задание
Задача 9
Создание мотивационного модуля геймификации для кадровой системы «Алабуги»
## Суть
В ОЭЗ «Алабуга» работает более 26 000 сотрудников, и ежемесячно к нам приезжают тысячи
кандидатов. Как перед трудоустройством, так и во время работы у специалистов есть
определённые задачи, ведущие к достижению их целей.
Сейчас задачи приходят разрозненно, из-за чего между ними не хватает общей связи, и нет
ощущения, что один шаг сейчас — это большой вклад в будущее. В связи с этим мы хотим разработать
геймифицированную платформу, на которой пользователи смогут выполнять различные задачи на любом
этапе, отслеживать свой прогресс и видеть, что ещё нужно сделать для достижения цели.
## Тематика
Корпоративная культура «Алабуги» всегда учила нас решать сверхзадачи и стремиться к звёздам. На
крыше пирамиды одного из офисов «Алабуги» расположен прототип советского орбитального ракетоплана
«Буран», напоминая о том, что в каждом из нас живёт частичка ДНК технологических изобретателей. А
кроме того, в планах компании на ближайшие 25 лет — начать освоение космоса и колонизацию лун
Юпитера.
В связи с этим тематику геймифицированной платформы хотелось бы видеть связанной с тематикой
космоса, где пользователи проходят путь от космических пилотов-кандидатов до командиров космических
подразделений.
## Терминология
- Пользователь — кандидат или сотрудник, пользователь платформы.
- HR — сотрудник, отвечающий за разработку заданий в платформе.
- Организатор — сотрудник, проводящий мероприятие (миссию).
- Опыт — очки прогресса, необходимые для повышения ранга.
- Мана — очки игровой валюты, за которые можно приобрести определённые бонусы.
- Ранг — игровое звание пользователя. Открывает новые задачи и цели.
- Артефакты — знаки отличия за миссии.
- Компетенции — определённые навыки со шкалами прогресса.
## Основные механики
### Ранги
Выполняя различные задачи на всех этапах, пользователи получают опыт и ману, которые повышают их
ранг. Ранги расположены в линейной последовательности, и нельзя через них перескакивать. Для
повышения ранга есть
### 3 условия:
- Первое — достаточное количество опыта, полученного при выполнении заданий.
- Второе — выполнение определённых заданий, необходимых для желаемого грейда.
- Третье — получение необходимого уровня прокачки конкретных компетенций.
> Пример: кандидат хочет получить оффер. Чтобы получить оффер, кандидату необходимо набрать 500
> очков опыта, выполнить задания (загрузка документов, заполнение резюме, выбор направлений) и
> прокачать компетенции «Общение» и «Аналитика» до 1 балла. Выполнив все условия, кандидат сможет
> получить оффер.
Примеры рангов: искатель, разведчик, навигатор, пилот-кандидат, принятый в экипаж,
пилот-испытатель, лидер эскадрильи, командир космического поселения и т. д.
Со стороны HR необходимо сделать возможность настраивать условия для получения рангов:
- Опыт: [NNN]
- Ключевые задания: [mission1, mission2]
- Уровень компетенций: [competention=N]
### Миссии
Миссии — это список заданий, доступных пользователю. Список миссий должен меняться в зависимости от
ранга. Открыв миссию, пользователь должен ознакомиться со всеми условиями и иметь возможность
перейти к действию.
Примеры миссий: сбор документов, заполнение резюме, прохождение бизнес-симуляций, приезд на очный
этап, прохождение собеседования, прохождение онбординга, выполнение плана на месяц, участие в
ежегодном ассессменте и т. д.
Минимальный список параметров для миссии:
- Название миссии
- Описание миссии
- Награда в опыте
- Награда в мане
- Доступность по рангу
- Какие компетенции на сколько прокачиваются
- Дополнительно: будет здорово за некоторые миссии выдавать особые награды — артефакты
### Ветвление
Миссии должны быть связанными, а не сами по себе. В списке миссий пользователь должен видеть, какие
ветви пути у него есть, например:
Ветка 1 — Блогерская:
- Миссия 1 — пост с фото
- Миссия 2 — сторис с хэштегом
- Миссия 3 — съёмка видеоблога про компанию
Миссии могут делиться по категориям:
- Квесты — базовые онлайн и офлайн задачи
- Рекрутинг — задания, направленные на привлечение новых кандидатов
- Лекторий — задания, направленные на обучение коллег и кандидатов
- Симулятор — задания, направленные на проверку знаний, например тесты, соревнования
При этом нельзя делать список миссий статичным, так как время, люди, задачи, цели — всё меняется.
Соответственно, со стороны HR мы должны иметь возможность создания и редактирования миссий, чтобы
поддерживать интересные и актуальные задачи в списке миссий у пользователей.
### Бортовой журнал
История действий, прогресса пользователя и рейтинга. Пользователь может видеть свой прогресс,
сколько он выполнил и к чему это привело. Также доступен просмотр ТОПов за месяц, неделю или год.
### Навыки
Список всех имеющихся компетенций с текущим уровнем прокачки:
- Вера в дело
- Стремление к большему
- Общение
- Аналитика
- Командование
- Юриспруденция
- Трёхмерное мышление
- Базовая экономика
- Основы аэронавигации
Прокачивать компетенции можно, выполняя миссии.
### Хранилище
Магазин, в котором можно приобрести за ману разнообразный мерч, товары, билеты и прочие бонусы.
### Онбординг
Для большего погружения в тематику необходимо не просто выдавать задачи и поощрять баллами, а
периодически предоставлять интересные отрывки лора. Онбординг должен рассказывать о работе
отдельных блоков на платформе, подкрепляя это интересными научными и историческими фактами о
космосе.
### Статистика для HR-специалистов
HR-специалистам важно иметь доступ к информации для анализа конверсии выполнения миссий, веток и
прогресса пользователей. Если результат миссии можно увидеть удалённо, будет здорово, чтобы
пользователи прикрепляли его при закрытии миссии. В таком случае также необходим функционал
модерации выполнения заданий.
### Артефакты
Артефакты — уникальные награды, которые можно получить за прохождение миссий. Необходим функционал
создания артефактов со стороны HR.
У артефакта есть атрибуты:
- Изображение
- Название
- Краткое описание
- Дополнительно: редкость артефакта
### Наши ресурсы
ОЭЗ «Алабуга» [alabuga.ru] - основной сайт компании
HR-платформа [hr.alabuga.ru] - основная платформа для авторизации в экосистеме «Алабуги». На этой
платформе расположены бизнес-симуляции, в которые играют кандидаты из сотрудники
Карьера.100 лидеров [career.alabuga.space]
Карьера.Политех [в разработке]
Карьера.Старт [в разработке] - платформы для трудоустройства кандидатов. В этих сервисах
кандидаты заполняют резюме, документы, проходят симуляции, записываются на очные этапы и проходят
собеседования
Алга.Алабуга [alga.alabuga.ru] - профориентационные экскурсии, которые запомнятся каждому участнику!
## Программно-аппаратные требования
3.1. Аппаратные требования и подход к разработке
Mobile First (для пользователей-сотрудников/кандидатов): интерфейс должен
быть адаптирован под мобильные устройства (ширина viewport от 320px).
Предполагается, что большинство задач пользователи будут выполнять на ходу:
проверять задания, загружать фотоотчёты, тратить ману в магазине.
Desktop/Tablet (для HR-специалистов): административный интерфейс для
требует большого экрана.
создания миссий, отслеживания статистики
Минимальная ширина — 1024px.
3.2. Программные требования (стек технологий)
Данный стек рекомендованный, но не обязательный.
Frontend:
Фреймворк: React (предпочтительно с использованием функциональных
компонентов и хуков)
Язык: TypeScript (строгая типизация критически важна для избежания ошибок в
рангах, миссиях и наградах)
Стили: CSS-in-JS (Styled-components, Emotion) или modern CSS с модулями.
Важно обеспечить тему, легко меняемую под космический стиль
Состояние: Redux Toolkit / MobX / Zustand для управления сложным состоянием
приложения (ранги, миссии, инвентарь)
Роутинг: React Router
Backend:
Фреймворк: Python + FastAPI (современный, высокопроизводительный) или
Django (более богатый из коробки, но тяжелее)
База данных: SQLite на время хакатона — для простоты разработки и
демонстрации. В продакшене — PostgreSQL
Аутентификация: JWT-токены. Необходима интеграция с «hr.alabuga.ru» (на
хакатоне можно замокать или использовать простой вход по логину/паролю)
Прочее:
Контроль версий: Git
4. Требования к презентации/демонстрации
Презентация должна быть в формате последовательного пользовательского
сценария (User Flow).
Цель: показать не набор разрозненных кнопок, а историю одного пользователя.
Пример сценария для демонстрации:
Кандидат (ранг: «Искатель») заходит на платформу, проходит онбординг.
Видит свою цель — «Получить оффер» (требует ранг «Пилот-кандидат»).
Переходит в раздел «Миссии», видит доступные ветки: «Рекрутинг» (загрузка резюме,
документов) и «Лекторий» (просмотр видео о компании).
Выбирает миссию «Загрузить резюме» → загружает файл → получает награду (опыт, мана,
прокачка компетенции «Аналитика»).
В «Бортовом журнале» видит запись о выполненной миссии и рост progress bar до следующего
ранга.
После выполнения всех ключевых миссий система автоматически повышает его ранг до «Пилот-
кандидат» и выдаёт уведомление об успехе.
Пользователь заходит в «Хранилище» и тратит заработанную ману на мерч (например,
«Футболка Алабуга» за 100 маны).
Для HR: показать один экран создания/редактирования миссии с полями (название, описание,
опыт, мана, ранг, компетенции).
5. Требования к сопроводительной документации
Краткий документ (README.md в репозитории), описывающий:
Команда и роли. Кто за что отвечал.
Архитектура. Краткое описание структуры фронтенда и бэкенда (какие
основные модули, как взаимодействуют).
Реализованные механики. Список того, что получилось сделать (например:
«Реализована система рангов с проверкой 3 условий», «Реализован CRUD для
миссий со стороны HR»).
Что не реализовано и почему. Честность приветствуется.
Инструкция по запуску. Как установить зависимости и запустить приложение
локально.
Ссылки. Ссылка на рабочий демо-сайт, ссылка на репозиторий с кодом.
6. Ресурсы
Основные референсы: Предоставлены ниже.
В оформлении использовать логотип (из приложенного файла) и брендовые
цвета:
Ключевые интеграции:
“hr.alabuga.ru” -> Аутентификация.
“career.alabuga.space” -> Источник задач для кандидатов.
Бизнес-симуляции с “hr.alabuga.ru” -> Задачи типа "Симуляция".
На хакатоне: Достаточно замокать данные интеграции (например, сделать
несколько пользователей в БД и эмулировать успешный возврат с бизнес-
симуляции).
7. Требования к сдаче решений
7.1. Промежуточная сдача (Концепт)
Визуальный концепт:
- Макеты ключевых экранов (как минимум: ЛК пользователя с прогрессом, список
миссий, карточка миссии, ЛК HR для создания миссии) в Figma/Adobe XD.
- Проработанный космический UI-kit: цветовая палитра, кнопки, типографика,
иконки.
Предпочтительная реализация ключевых механик:
- Работающий фронтенд на React с роутингом между пустыми страницами.
- Работающий бэкенд на Python с 2-3 API-эндпоинтами (например, “GET
/api/missions”, “POST /api/missions”).
- Реализована хотя бы одна сложная механика на выбор: система проверки условий
для повышения ранга ИЛИ система ветвления миссий.
User Stories в формате:
- «Как Кандидат, я хочу видеть свой прогресс в виде progress bar, чтобы понимать,
сколько еще нужно сделать для оффера».
- «Как HR, я хочу иметь возможность указать награду в мане за миссию, чтобы
мотивировать пользователей выполнять ее».
7.2. Финальная сдача
Полная реализация одного end-to-end процесса. Например, процесса
«Кандидат выполняет миссии для получения оффера»:
- Пользователь регистрируется/логинится (мок).
- Видит свой текущий ранг и цели.
- Выполняет 2-3 связанные миссии из одной ветки (квест + симулятор).
- Система начисляет опыт, ману, прокачивает компетенции.
- При выполнении всех условий система автоматически повышает ранг
пользователя.
● Пользователь видит это изменение в UI (уведомление, изменение в бортовом
журнале).
- Демонстрация это сквозной сценарий, а не показ отдельно взятого экрана
миссий и отдельно взятого экрана ранга.
8. Критерии оценки (на что делать акцент)
1. Подход коллектива к решению задачи (20%):
- Понимание бизнес-цели: Не просто «сделать игру», а «повысить вовлеченность и
связанность этапов».
- Работа в команде: Использование Git (много мелких коммитов, а не один
огромный), распределение задач (Trello/Notion/Kanban-доска).*Желательно
- Качество визуального концепта. Умение перенести космическую тему в
интерфейс.
2. Техническая проработка решения (30%):
- Чистота и структура кода (отступы, именование переменных, компонентный
подход).
- Архитектурные решения: Как спроектированы модели данных (ранг, миссия,
пользователь), API.
- Сложность реализованной механики: Реализация системы рангов с тремя
условиями будет оценена выше, чем простой линейный прогресс.
3. Соответствие решения поставленной задаче (25%):
- Решение решает проблему «разрозненных задач» (ветвление миссий, общая
цель).
- Учтена тематика космоса (лоре, нейминг, визуал).
- Есть разделение на интерфейсы User и HR.
4. Эффективность решения (15%):
- Работоспособность: Приложение не падает при базовых сценариях.
- Удобство использования (Usability): Понятно ли пользователю,что делать? Ведет
ли интерфейс его к цели?
5. Выступление на питч-сессии (10%):
- Ясность: Четкое объяснение проблемы и решения.
- Убедительность: Акцент на то, как продукт решает боль заказчика.
● Демонстрация: Упор на живой сквозной сценарий, а не на слайды.
- Тайминг: Уложиться в отведенное время.
Референсы: