Атестаційні завдання K2 ERP/Сайт роботи: відмінності між версіями
R (обговорення | внесок) Створена сторінка: = Модуль платформи пошуку роботи: вакансії, резюме, відгуки кандидатів = == Реальний бізнес-контекст == Компанія створює сайт для пошуку роботи і підбору персоналу: * роботодавці розміщують вакансії; * кандидати створюють резюме і відгукуються на вакан... |
R (обговорення | внесок) Немає опису редагування |
||
| Рядок 1: | Рядок 1: | ||
= Модуль платформи пошуку роботи: вакансії, резюме, відгуки кандидатів = | {{DISPLAYTITLE:Атестаційні завдання K2 ERP/Сайт роботи}} | ||
'''Атестаційне завдання K2 ERP — Сайт роботи''' — це практична задача для перевірки навичок розробника або впроваджувача [[K2 ERP]] у створенні модуля платформи пошуку роботи: вакансій, резюме, відгуків кандидатів, кабінетів роботодавців і шукачів, пошуку, фільтрації, модерації та нотифікацій. | |||
Модуль має забезпечувати повний цикл роботи job-платформи: роботодавець створює вакансію, кандидат створює резюме, система дозволяє шукати вакансії й резюме, кандидат відгукується на вакансію, роботодавець переглядає відгуки, а адміністрація контролює якість контенту. | |||
<div style="border:3px solid #1565c0; background:#e3f2fd; padding:14px; margin:16px 0;"> | |||
'''Коротко.''' Потрібно реалізувати сайт пошуку роботи: вакансії, резюме, відгуки, кабінет роботодавця, кабінет кандидата, пошук, фільтри, модерація, архівація вакансій, email-сповіщення та базові преміум-послуги. | |||
</div> | |||
__TOC__ | |||
== Назва завдання == | |||
'''Модуль платформи пошуку роботи: вакансії, резюме, відгуки кандидатів'''. | |||
== Мета завдання == | |||
Мета завдання — створити в K2 ERP модуль для автоматизації роботи сайту пошуку роботи та підбору персоналу. | |||
Система повинна дозволяти: | |||
* реєструвати роботодавців; | |||
* реєструвати кандидатів; | |||
* вести довідник категорій вакансій; | |||
* вести довідник регіонів; | |||
* вести типи зайнятості; | |||
* створювати вакансії; | |||
* створювати резюме; | |||
* публікувати вакансії після модерації або одразу; | |||
* публікувати резюме з налаштуванням видимості; | |||
* виконувати пошук вакансій; | |||
* виконувати пошук резюме; | |||
* фільтрувати вакансії за категорією, регіоном, зарплатою і типом зайнятості; | |||
* фільтрувати резюме за посадою, регіоном, досвідом і очікуваною зарплатою; | |||
* дозволяти кандидатам відгукуватися на вакансії; | |||
* дозволяти роботодавцям переглядати відгуки; | |||
* вести статуси відгуків; | |||
* автоматично архівувати вакансії після завершення строку актуальності; | |||
* надсилати email-сповіщення; | |||
* підтримувати особисті кабінети роботодавця і кандидата; | |||
* підтримувати преміум-послуги для вакансій; | |||
* формувати звіти по вакансіях, резюме, відгуках і активності користувачів. | |||
<div style="border:3px solid #2e7d32; background:#e8f5e9; padding:14px; margin:16px 0;"> | |||
'''Головний принцип.''' Сайт роботи має з’єднувати дві сторони: роботодавця, який шукає працівника, і кандидата, який шукає роботу. Тому ключова логіка модуля — це вакансії, резюме, пошук і відгуки. | |||
</div> | |||
== Реальний бізнес-контекст == | == Реальний бізнес-контекст == | ||
Компанія створює сайт для пошуку роботи | Компанія створює сайт для пошуку роботи, рекрутингу або внутрішнього підбору персоналу. | ||
На платформі працюють дві основні групи користувачів: | |||
* роботодавці, які публікують вакансії; | |||
* кандидати, які створюють резюме та відгукуються на вакансії. | |||
Адміністрація платформи контролює якість контенту, модерує вакансії й резюме, стежить за активністю користувачів, керує категоріями, регіонами та преміум-послугами. | |||
Такий модуль може використовуватися для: | |||
* публічного сайту пошуку роботи; | |||
* рекрутингової агенції; | |||
* біржі фрілансу; | |||
* корпоративного порталу вакансій; | |||
* внутрішнього HR-порталу компанії; | |||
* галузевої платформи пошуку спеціалістів. | |||
== Основний бізнес-процес == | |||
Типовий процес роботи сайту пошуку роботи виглядає так: | |||
# адміністратор створює категорії вакансій, регіони і типи зайнятості; | |||
# роботодавець реєструється на сайті; | |||
# роботодавець створює компанію або профіль роботодавця; | |||
# роботодавець публікує вакансію; | |||
# вакансія переходить на модерацію або стає активною; | |||
# кандидат реєструється на сайті; | |||
# кандидат створює резюме; | |||
# кандидат шукає вакансії через пошук і фільтри; | |||
# кандидат відкриває вакансію і натискає '''«Відгукнутися»'''; | |||
# роботодавець бачить відгук у своєму кабінеті; | |||
# роботодавець змінює статус відгуку; | |||
# кандидат бачить статус свого відгуку; | |||
# після завершення строку актуальності вакансія архівується; | |||
# дані потрапляють у звіти. | |||
== Основні об’єкти модуля == | |||
{| class="wikitable" style="width:100%;" | |||
! Об’єкт | |||
! Призначення | |||
|- | |||
| Кандидати | |||
| Користувачі, які шукають роботу | |||
|- | |||
| Роботодавці | |||
| Компанії або представники компаній, які шукають працівників | |||
|- | |||
| Компанії | |||
| Профілі роботодавців | |||
|- | |||
| Категорії вакансій | |||
| Галузі та напрями роботи | |||
|- | |||
| Регіони | |||
| Географія вакансій і резюме | |||
|- | |||
| Типи зайнятості | |||
| Повна, часткова, віддалена робота, стажування тощо | |||
|- | |||
| Вакансії | |||
| Оголошення роботодавців про пошук працівників | |||
|- | |||
| Резюме | |||
| Профілі кандидатів із досвідом, освітою і навичками | |||
|- | |||
| Відгуки | |||
| Заявки кандидатів на вакансії | |||
|- | |||
| Статуси відгуків | |||
| Новий, переглянуто, запрошено, відхилено, прийнято | |||
|- | |||
| Модерація | |||
| Перевірка вакансій, резюме і компаній | |||
|- | |||
| Нотифікації | |||
| Email-повідомлення про нові вакансії, відгуки і статуси | |||
|- | |||
| Преміум-послуги | |||
| Підняття, виділення або просування вакансій | |||
|- | |||
| Звіти | |||
| Аналітика по вакансіях, резюме, відгуках і користувачах | |||
|} | |||
== Довідник «Категорії вакансій» == | |||
Категорії вакансій потрібні для структурування вакансій і резюме. | |||
== | == Приклади категорій == | ||
* IT; | |||
* маркетинг; | |||
* продажі; | |||
* будівництво; | |||
* медицина; | |||
* освіта; | |||
* логістика; | |||
* виробництво; | |||
* фінанси; | |||
* бухгалтерія; | |||
* адміністративний персонал; | |||
* HoReCa; | |||
* робочі спеціальності. | |||
==== | == Поля категорії == | ||
{| class="wikitable" style="width:100%;" | |||
! Поле | |||
! Опис | |||
|- | |||
| Назва категорії | |||
| Наприклад: IT, маркетинг, медицина, продажі | |||
|- | |||
| Батьківська категорія | |||
| Опціонально, для побудови ієрархії | |||
|- | |||
| Опис | |||
| Короткий опис напряму | |||
|- | |||
| Активність | |||
| Чи доступна категорія для вибору | |||
|} | |||
== Довідник «Регіони» == | |||
Регіони потрібні для географічного пошуку вакансій і резюме. | |||
== | == Поля регіону == | ||
{| class="wikitable" style="width:100%;" | |||
! Поле | |||
! Опис | |||
|- | |||
| Країна | |||
| Країна розміщення вакансії або кандидата | |||
|- | |||
| Область | |||
| Область або регіон | |||
|- | |||
| Місто | |||
| Населений пункт | |||
|- | |||
| Район | |||
| Опціонально | |||
|- | |||
| Активність | |||
| Чи доступний регіон для вибору | |||
|} | |||
== Довідник «Типи зайнятості» == | |||
Тип зайнятості допомагає кандидату й роботодавцю швидше знайти відповідні пропозиції. | |||
== Приклади типів зайнятості == | |||
* повна зайнятість; | * повна зайнятість; | ||
* часткова зайнятість; | * часткова зайнятість; | ||
* віддалена робота; | * віддалена робота; | ||
* стажування. | * гібридна робота; | ||
* стажування; | |||
* проєктна робота; | |||
* фріланс; | |||
* тимчасова робота. | |||
== База «Вакансії» == | |||
База вакансій містить оголошення роботодавців про пошук працівників. | |||
== Колонки бази вакансій == | |||
{| class="wikitable" style="width:100%;" | |||
! Колонка | |||
! Опис | |||
|- | |||
| Назва вакансії | |||
| Посада або коротка назва роботи | |||
|- | |||
| Компанія | |||
| Роботодавець, який опублікував вакансію | |||
|- | |||
| Категорія | |||
| Галузь або напрям роботи | |||
|- | |||
| Регіон | |||
| Місто або область | |||
|- | |||
| Зарплата від | |||
| Мінімальна зарплата | |||
|- | |||
| Зарплата до | |||
| Максимальна зарплата | |||
|- | |||
| Тип зайнятості | |||
| Повна, часткова, віддалена тощо | |||
|- | |||
| Статус | |||
| Активна, на модерації, завершена, архівна | |||
|- | |||
| Дата публікації | |||
| Коли вакансія стала активною | |||
|- | |||
| Термін актуальності | |||
| До якої дати вакансія активна | |||
|} | |||
== Поля вакансії == | |||
{| class="wikitable" style="width:100%;" | |||
! Поле | |||
! Опис | |||
|- | |||
| Назва вакансії | |||
| Наприклад: Python Developer, бухгалтер, менеджер продажів | |||
|- | |||
| Компанія | |||
| Роботодавець | |||
|- | |||
| Категорія | |||
| Напрям роботи | |||
|- | |||
| Регіон | |||
| Місце роботи | |||
|- | |||
| Формат роботи | |||
| Офіс, віддалено, гібридно | |||
|- | |||
| Тип зайнятості | |||
| Повна, часткова, стажування, фріланс | |||
|- | |||
| Зарплата від | |||
| Мінімальна сума | |||
|- | |||
| Зарплата до | |||
| Максимальна сума | |||
|- | |||
| Валюта | |||
| UAH, USD, EUR або інша | |||
|- | |||
| Опис вакансії | |||
| Загальна інформація про роботу | |||
|- | |||
| Вимоги | |||
| Навички, досвід, освіта | |||
|- | |||
| Обов’язки | |||
| Що потрібно буде робити | |||
|- | |||
| Переваги | |||
| Бонуси, умови, соцпакет | |||
|- | |||
| Контактна особа | |||
| Представник роботодавця | |||
|- | |||
| Статус | |||
| Поточний стан вакансії | |||
|- | |||
| Термін актуальності | |||
| До якої дати вакансія показується як активна | |||
|} | |||
== Статуси вакансій == | |||
{| class="wikitable" style="width:100%;" | |||
! Статус | |||
! Значення | |||
|- | |||
| Чернетка | |||
| Вакансія створюється, але ще не опублікована | |||
|- | |||
| На модерації | |||
| Вакансія очікує перевірки адміністрацією | |||
|- | |||
| Активна | |||
| Вакансія доступна кандидатам | |||
|- | |||
| Призупинена | |||
| Роботодавець тимчасово приховав вакансію | |||
|- | |||
| Завершена | |||
| Пошук кандидата завершено | |||
|- | |||
| Архівна | |||
| Вакансія більше неактивна, але зберігається в системі | |||
|- | |||
| Відхилена | |||
| Вакансія не пройшла модерацію | |||
|} | |||
== База «Резюме кандидатів» == | |||
База резюме містить профілі кандидатів. | |||
== Колонки бази резюме == | |||
{| class="wikitable" style="width:100%;" | |||
! Колонка | |||
! Опис | |||
|- | |||
| ПІБ | |||
| Ім’я кандидата | |||
|- | |||
| Позиція | |||
| Посада, яку шукає кандидат | |||
|- | |||
| Категорія | |||
| Галузь або напрям роботи | |||
|- | |||
| Регіон | |||
| Місто або область | |||
|- | |||
| Досвід роботи | |||
| Загальний досвід або опис попередніх місць роботи | |||
|- | |||
| Освіта | |||
| Навчальні заклади, курси, сертифікати | |||
|- | |||
| Очікувана зарплата | |||
| Бажаний рівень оплати | |||
|- | |||
| Тип зайнятості | |||
| Повна, часткова, віддалена тощо | |||
|- | |||
| Видимість | |||
| Публічне або приховане | |||
|} | |||
== Поля резюме == | |||
{| class="wikitable" style="width:100%;" | |||
! Поле | |||
! Опис | |||
|- | |||
| ПІБ кандидата | |||
| Повне ім’я | |||
|- | |||
| Бажана посада | |||
| Посада, яку шукає кандидат | |||
|- | |||
| Категорія | |||
| Галузь або професійний напрям | |||
|- | |||
| Регіон | |||
| Місце проживання або бажане місто роботи | |||
|- | |||
| Формат роботи | |||
| Офіс, віддалено, гібридно | |||
|- | |||
| Тип зайнятості | |||
| Повна, часткова, стажування, фріланс | |||
|- | |||
| Очікувана зарплата | |||
| Бажаний рівень оплати | |||
|- | |||
| Досвід роботи | |||
| Опис досвіду | |||
|- | |||
| Освіта | |||
| Освіта, курси, сертифікати | |||
|- | |||
| Навички | |||
| Професійні навички | |||
|- | |||
| Про себе | |||
| Короткий опис кандидата | |||
|- | |||
| Фото профілю | |||
| Опціонально | |||
|- | |||
| Контакти | |||
| Телефон, email або інші канали зв’язку | |||
|- | |||
| Видимість | |||
| Публічне або приховане резюме | |||
|} | |||
== Видимість резюме == | |||
Кандидат має контролювати видимість резюме. | |||
{| class="wikitable" style="width:100%;" | |||
! Видимість | |||
! Значення | |||
|- | |||
| Публічне | |||
| Резюме видно роботодавцям у пошуку | |||
|- | |||
| Приховане | |||
| Резюме не видно в пошуку, але кандидат може відгукуватися на вакансії | |||
|} | |||
<div style="border:2px solid #f57c00; background:#fff3e0; padding:14px; margin:16px 0;"> | |||
'''Важливо.''' Приховане резюме не повинно показуватися в публічному пошуку роботодавців, але кандидат може використовувати його для відгуку на вакансію. | |||
</div> | |||
== Відгуки на вакансії == | |||
Відгук — це заявка кандидата на конкретну вакансію. | |||
== Процес відгуку == | |||
# Кандидат відкриває вакансію. | |||
# Натискає кнопку '''«Відгукнутися»'''. | |||
# Обирає своє резюме. | |||
# За потреби додає супровідний текст. | |||
# Система створює відгук. | |||
# Роботодавець отримує сповіщення. | |||
# Відгук з’являється в кабінеті роботодавця. | |||
# Кандидат бачить статус відгуку у своєму кабінеті. | |||
== Поля відгуку == | |||
{| class="wikitable" style="width:100%;" | |||
! Поле | |||
! Опис | |||
|- | |||
| Вакансія | |||
| На яку вакансію відгукнувся кандидат | |||
|- | |||
| Кандидат | |||
| Хто відгукнувся | |||
|- | |||
| Резюме | |||
| Яке резюме надіслано роботодавцю | |||
|- | |||
| Супровідний текст | |||
| Коротке повідомлення кандидата | |||
|- | |||
| Дата відгуку | |||
| Коли відгук створено | |||
|- | |||
| Статус | |||
| Новий, переглянуто, запрошено, відхилено тощо | |||
|} | |||
== Статуси відгуку == | |||
{| class="wikitable" style="width:100%;" | |||
! Статус | |||
! Значення | |||
|- | |||
| Новий | |||
| Відгук створено, роботодавець ще не переглянув | |||
|- | |||
| Переглянуто | |||
| Роботодавець відкрив відгук | |||
|- | |||
| Запрошено | |||
| Кандидата запросили на співбесіду або наступний етап | |||
|- | |||
| Відхилено | |||
| Кандидат не підходить по вакансії | |||
|- | |||
| Прийнято | |||
| Кандидата обрано | |||
|- | |||
| Архів | |||
| Відгук більше неактивний | |||
|} | |||
== Особистий кабінет роботодавця == | |||
Кабінет роботодавця потрібен для керування вакансіями та відгуками. | |||
== Функції кабінету роботодавця == | |||
Роботодавець повинен мати можливість: | |||
* створити профіль компанії; | |||
* створювати вакансії; | |||
* редагувати вакансії; | |||
* призупиняти вакансії; | |||
* завершувати вакансії; | |||
* переглядати відгуки кандидатів; | |||
* відкривати резюме кандидатів; | |||
* змінювати статус відгуку; | |||
* шукати резюме; | |||
* переглядати статистику по вакансіях; | |||
* замовляти преміум-послуги, якщо вони реалізовані. | |||
== Особистий кабінет кандидата == | |||
Кабінет кандидата потрібен для керування резюме та відгуками. | |||
== Функції кабінету кандидата == | |||
Кандидат повинен мати можливість: | |||
* створити резюме; | |||
* редагувати резюме; | |||
* змінювати видимість резюме; | |||
* переглядати список своїх відгуків; | |||
* бачити статуси відгуків; | |||
* зберігати обрані вакансії, опціонально; | |||
* отримувати рекомендації вакансій, опціонально; | |||
* отримувати email-сповіщення про нові вакансії. | |||
== Пошук вакансій == | |||
Пошук вакансій має працювати по ключових словах і фільтрах. | |||
== | == Поля пошуку вакансій == | ||
Пошук повинен перевіряти: | |||
* назву вакансії; | |||
* | |||
* опис вакансії; | * опис вакансії; | ||
* вимоги; | * вимоги; | ||
* | * обов’язки; | ||
* статус: | * назву компанії. | ||
** | |||
** на | == Фільтри вакансій == | ||
** | |||
* | Система повинна підтримувати фільтрацію за: | ||
* | |||
* категорією; | |||
* регіоном; | |||
* містом; | |||
* типом зайнятості; | |||
* форматом роботи; | |||
* зарплатою від; | |||
* зарплатою до; | |||
* датою публікації; | |||
* компанією. | |||
== Сортування вакансій == | |||
Сортування вакансій може виконуватися: | |||
* за датою публікації; | |||
* за зарплатою зростання; | |||
* за зарплатою спадання; | |||
* за релевантністю; | |||
* за преміум-статусом. | |||
== Пошук резюме == | |||
Пошук резюме потрібен роботодавцям. | |||
== Поля пошуку резюме == | |||
Пошук повинен перевіряти: | |||
* бажану посаду; | |||
* навички; | |||
* досвід; | |||
* освіту; | |||
* опис кандидата. | |||
== Фільтри резюме == | |||
Система повинна підтримувати фільтрацію за: | |||
* категорією; | |||
* регіоном; | |||
* типом зайнятості; | |||
* форматом роботи; | |||
* очікуваною зарплатою; | |||
* досвідом роботи; | |||
* видимістю, для адміністратора. | |||
== Модерація == | |||
Модерація потрібна для контролю якості вакансій, резюме і профілів роботодавців. | |||
== Що може модеруватися == | |||
* вакансії; | |||
* резюме; | |||
* компанії; | |||
* фото профілю; | |||
* опис вакансії; | |||
* контактні дані; | |||
* преміум-публікації. | |||
== Дії модератора == | |||
Модератор повинен мати можливість: | |||
* схвалити вакансію; | |||
* відхилити вакансію; | |||
* вказати причину відхилення; | |||
* приховати резюме; | |||
* заблокувати роботодавця або кандидата; | |||
* повернути матеріал на редагування; | |||
* переглянути історію змін. | |||
== Автоматична архівація вакансій == | |||
Вакансія повинна автоматично переходити в архів після завершення строку актуальності. | |||
Наприклад: | |||
<pre> | |||
Термін актуальності вакансії = 30 днів | |||
</pre> | |||
Після завершення строку система повинна: | |||
* змінити статус вакансії на '''«Архівна»'''; | |||
* прибрати її з публічного пошуку; | |||
* залишити в кабінеті роботодавця; | |||
* надіслати роботодавцю повідомлення; | |||
* запропонувати поновити вакансію. | |||
<div style="border:3px solid #b71c1c; background:#ffebee; padding:14px; margin:16px 0;"> | |||
'''Критично.''' Архівні, завершені або відхилені вакансії не повинні показуватися кандидатам як активні. | |||
</div> | |||
== Email-нотифікації == | |||
Модуль має підтримувати email-сповіщення. | |||
== Події для кандидата == | |||
Кандидату бажано надсилати повідомлення, коли: | |||
* резюме створено; | |||
* резюме схвалено або відхилено; | |||
* з’явилася нова вакансія за збереженим пошуком; | |||
* роботодавець переглянув відгук; | |||
* статус відгуку змінено; | |||
* кандидата запросили на співбесіду. | |||
== Події для роботодавця == | |||
Роботодавцю бажано надсилати повідомлення, коли: | |||
* вакансію створено; | |||
* вакансію схвалено або відхилено; | |||
* отримано новий відгук; | |||
* вакансія скоро завершить строк дії; | |||
* вакансію архівовано; | |||
* кандидат оновив резюме, якщо він уже відгукувався. | |||
== Преміум-послуги == | |||
Опціонально модуль може підтримувати платні або службові преміум-послуги. | |||
== Приклади преміум-послуг == | |||
* підняття вакансії у списку; | |||
* виділення вакансії кольором або рамкою; | |||
* закріплення вакансії вгорі списку; | |||
* показ вакансії в рекомендованих; | |||
* розширена статистика; | |||
* доступ до бази резюме; | |||
* брендована сторінка компанії. | |||
== | == Поля преміум-послуги == | ||
{| class="wikitable" style="width:100%;" | |||
! Поле | |||
! Опис | |||
|- | |||
| Назва послуги | |||
| Наприклад: підняття вакансії | |||
|- | |||
| Тип | |||
| Виділення, підняття, закріплення, доступ | |||
|- | |||
| Строк дії | |||
| Скільки днів працює послуга | |||
|- | |||
| Вартість | |||
| Ціна послуги | |||
|- | |||
| Статус | |||
| Активна або неактивна | |||
|} | |||
== Збережені пошуки == | |||
Опціонально кандидат може зберегти пошуковий запит. | |||
Збережений пошук може містити: | |||
* | * категорію; | ||
* регіон; | * регіон; | ||
* тип зайнятості; | * тип зайнятості; | ||
* | * зарплату; | ||
* | * ключові слова. | ||
* | |||
Система може надсилати кандидату нові вакансії, які відповідають збереженому пошуку. | |||
== Обрані вакансії == | |||
Кандидат може додавати вакансії в обране. | |||
Обране дозволяє: | |||
* зберегти цікаву вакансію; | |||
* повернутися до неї пізніше; | |||
* порівняти кілька вакансій; | |||
* швидше відгукнутися. | |||
== Звіти == | |||
== Звіт «Вакансії за період» == | |||
Звіт показує створені вакансії за вибраний період. | |||
У звіті потрібно відображати: | |||
* дату; | |||
* кількість створених вакансій; | |||
* кількість активних вакансій; | |||
* кількість вакансій на модерації; | |||
* кількість завершених вакансій; | |||
* кількість архівних вакансій. | |||
== Звіт «Резюме за період» == | |||
Звіт показує активність кандидатів. | |||
У звіті потрібно відображати: | |||
* | * дату; | ||
* | * кількість створених резюме; | ||
* | * кількість публічних резюме; | ||
* кількість прихованих резюме; | |||
* кількість оновлених резюме. | |||
== | == Звіт «Відгуки кандидатів» == | ||
Звіт показує активність відгуків. | |||
У звіті потрібно відображати: | |||
* вакансію; | |||
* компанію; | |||
* кількість відгуків; | |||
* кількість переглянутих; | |||
* кількість запрошених; | |||
* кількість відхилених; | |||
* кількість прийнятих. | |||
== Звіт «Активність роботодавців» == | |||
Звіт показує, які роботодавці найактивніше користуються платформою. | |||
У звіті потрібно відображати: | |||
* компанію; | |||
* кількість вакансій; | |||
* кількість активних вакансій; | |||
* кількість отриманих відгуків; | |||
* дату останньої публікації. | |||
== | == Звіт «Популярні категорії» == | ||
Звіт показує найбільш активні напрями. | |||
У звіті потрібно відображати: | |||
* категорію; | |||
* кількість вакансій; | |||
* кількість резюме; | |||
* кількість відгуків; | |||
* середню зарплату, якщо використовується. | |||
== AJAX-інтерактив == | |||
Інтерфейс має працювати швидко та без зайвого перезавантаження сторінок. | |||
Через AJAX мають працювати: | |||
* створення вакансії; | |||
* створення резюме; | |||
* пошук вакансій; | |||
* пошук резюме; | |||
* фільтрація; | |||
* сортування; | |||
* відгук на вакансію; | |||
* зміна статусу відгуку; | |||
* додавання вакансії в обране; | |||
* зміна видимості резюме; | |||
* модерація; | |||
* оновлення списків і звітів. | |||
== Логування змін == | |||
Модуль повинен фіксувати важливі зміни. | |||
* | Журнал змін має зберігати: | ||
* | |||
* хто створив вакансію; | |||
* хто змінив вакансію; | |||
* хто відправив вакансію на модерацію; | |||
* хто схвалив або відхилив вакансію; | |||
* хто створив резюме; | |||
* хто змінив видимість резюме; | |||
* хто створив відгук; | |||
* хто змінив статус відгуку; | |||
* хто архівував вакансію; | |||
* хто активував преміум-послугу; | |||
* дату й час зміни; | |||
* старе та нове значення, якщо це можливо. | |||
== Права доступу == | |||
Модуль має підтримувати розмежування прав. | |||
{| class="wikitable" style="width:100%;" | |||
! Роль | |||
! Можливості | |||
|- | |||
| Гість | |||
| Переглядає активні вакансії, користується пошуком і фільтрами | |||
|- | |||
| Кандидат | |||
| Створює резюме, відгукується на вакансії, бачить статуси відгуків | |||
|- | |||
| Роботодавець | |||
| Створює вакансії, переглядає відгуки, шукає резюме | |||
|- | |||
| Модератор | |||
| Перевіряє вакансії, резюме, компанії та керує статусами | |||
|- | |||
| Адміністратор | |||
| Налаштовує довідники, права, категорії, регіони, преміум-послуги | |||
|- | |||
| Керівник | |||
| Переглядає статистику, активність і звіти платформи | |||
|} | |||
== Технічні вимоги == | == Технічні вимоги == | ||
{| class="wikitable" | {| class="wikitable" style="width:100%;" | ||
! Параметр | ! Параметр | ||
! Опис | ! Опис | ||
| Рядок 163: | Рядок 885: | ||
| K2 Cloud ERP на Python або PHP | | K2 Cloud ERP на Python або PHP | ||
|- | |- | ||
| | | База даних | ||
| PostgreSQL або MySQL | | PostgreSQL або MySQL | ||
|- | |- | ||
| Фронтенд | | Фронтенд | ||
| HTML5, JavaScript | | HTML5, JavaScript | ||
|- | |||
| AJAX | |||
| Fetch API або Axios | |||
|- | |- | ||
| UI-компоненти | | UI-компоненти | ||
| DataTables для адмінки, Select2, Datepicker | | DataTables для адмінки, Select2, Datepicker | ||
|- | |||
| Файли | |||
| Фото профілю, логотип компанії, PDF-резюме, якщо потрібно | |||
|- | |- | ||
| Друк | | Друк | ||
| Генерація резюме в PDF, опціонально | | Генерація резюме в PDF, опціонально | ||
|- | |||
| Email | |||
| Нотифікації кандидатам і роботодавцям | |||
|} | |} | ||
== | == Рекомендовані сутності бази даних == | ||
Для реалізації задачі доцільно передбачити такі сутності: | |||
* користувачі; | |||
* ролі користувачів; | |||
* кандидати; | |||
* роботодавці; | |||
* компанії; | |||
* категорії вакансій; | |||
* регіони; | |||
* типи зайнятості; | |||
* вакансії; | |||
* резюме; | |||
* досвід роботи; | |||
* освіта; | |||
* навички; | |||
* відгуки; | |||
* статуси відгуків; | |||
* обрані вакансії; | |||
* збережені пошуки; | |||
* модерація; | |||
* преміум-послуги; | |||
* email-сповіщення; | |||
* журнал змін; | |||
* звіти; | |||
* права доступу. | |||
== Практичне завдання == | |||
{| class="wikitable" | У межах атестації потрібно продемонструвати робочий сценарій. | ||
Мінімальний сценарій: | |||
# створити категорії вакансій; | |||
# створити регіони; | |||
# створити типи зайнятості; | |||
# створити роботодавця; | |||
# створити профіль компанії; | |||
# створити вакансію; | |||
# вказати зарплату, опис, вимоги, тип зайнятості і регіон; | |||
# відправити вакансію на модерацію; | |||
# схвалити вакансію; | |||
# перевірити, що вакансія стала активною; | |||
# створити кандидата; | |||
# створити резюме; | |||
# зробити резюме публічним; | |||
# знайти вакансію через пошук; | |||
# відфільтрувати вакансії за категорією, регіоном і зарплатою; | |||
# відгукнутися на вакансію; | |||
# переглянути відгук у кабінеті роботодавця; | |||
# змінити статус відгуку на '''«Переглянуто»'''; | |||
# змінити статус відгуку на '''«Запрошено»'''; | |||
# перевірити статус відгуку в кабінеті кандидата; | |||
# створити прострочену вакансію для тесту; | |||
# перевірити автоматичну архівацію; | |||
# сформувати звіт вакансій за період; | |||
# сформувати звіт резюме за період; | |||
# сформувати звіт відгуків; | |||
# перевірити журнал змін. | |||
== Критерії оцінювання == | |||
{| class="wikitable" style="width:100%;" | |||
! Критерій | ! Критерій | ||
! Бали | ! Бали | ||
! Що перевіряється | |||
|- | |- | ||
| Реалізація бази вакансій і резюме | | Реалізація бази вакансій і резюме | ||
| 20 | | 20 | ||
| Категорії, регіони, типи зайнятості, вакансії, резюме, компанії, кандидати | |||
|- | |- | ||
| Пошук, фільтрація і відгуки | | Пошук, фільтрація і відгуки | ||
| 20 | | 20 | ||
| Пошук вакансій і резюме, фільтри, відгук кандидата, статуси відгуків | |||
|- | |- | ||
| Особистий кабінет роботодавця і кандидата | | Особистий кабінет роботодавця і кандидата | ||
| 20 | | 20 | ||
| Керування вакансіями, резюме, відгуками, статусами і видимістю | |||
|- | |- | ||
| Нотифікації і архівація вакансій | | Нотифікації і архівація вакансій | ||
| 20 | | 20 | ||
| Email-повідомлення, завершення строку актуальності, архівування вакансій | |||
|- | |- | ||
| Інтерактивність через AJAX | | Інтерактивність через AJAX | ||
| 20 | | 20 | ||
| Створення, пошук, фільтрація, відгуки, статуси, модерація без перезавантаження | |||
|- | |||
! Разом | |||
! 100 | |||
! Максимальна оцінка | |||
|} | |||
== Шкала оцінювання == | |||
{| class="wikitable" style="width:100%;" | |||
! Бали | |||
! Рівень | |||
! Опис | |||
|- | |||
| 90–100 | |||
| Відмінно | |||
| Модуль повністю працює: вакансії, резюме, відгуки, кабінети, пошук, модерація, архівація, нотифікації й AJAX реалізовані коректно | |||
|- | |||
| 75–89 | |||
| Добре | |||
| Основна логіка працює, є незначні недоліки, які не руйнують процес пошуку роботи | |||
|- | |||
| 60–74 | |||
| Зараховано | |||
| Базовий сценарій працює, але частина функцій реалізована неповно або потребує доопрацювання | |||
|- | |||
| 0–59 | |||
| Не зараховано | |||
| Відсутня критична логіка: вакансії, резюме, відгуки, пошук, кабінети або статуси | |||
|} | |} | ||
== Критичні помилки == | |||
Критичними помилками вважаються ситуації, коли: | |||
* неможливо створити категорію вакансій; | |||
* неможливо створити вакансію; | |||
* вакансія не має роботодавця; | |||
* вакансія не має статусу; | |||
* активна вакансія не показується в пошуку; | |||
* архівна або відхилена вакансія показується як активна; | |||
* неможливо створити резюме; | |||
* приховане резюме показується роботодавцям у пошуку; | |||
* кандидат не може відгукнутися на вакансію; | |||
* роботодавець не бачить відгуків по своїй вакансії; | |||
* статус відгуку не зберігається; | |||
* фільтрація за категорією, регіоном або зарплатою не працює; | |||
* автоматична архівація вакансій не працює, якщо вона заявлена; | |||
* email-сповіщення не надсилаються, якщо вони заявлені; | |||
* зміни вакансій, резюме або відгуків не логуються; | |||
* звіти не відповідають фактичним даним. | |||
<div style="border:3px solid #b71c1c; background:#ffebee; padding:14px; margin:16px 0;"> | |||
'''Умова складання.''' Завдання не може бути зараховане, якщо система не дозволяє пройти базовий цикл сайту роботи: роботодавець → вакансія → кандидат → резюме → пошук → відгук → перегляд роботодавцем → статус → звіт. | |||
</div> | |||
== Очікуваний результат == | |||
У результаті виконання атестаційного завдання має бути створений модуль сайту пошуку роботи в K2 ERP. | |||
Модуль має підтримувати роботодавців, кандидатів, компанії, категорії вакансій, регіони, типи зайнятості, вакансії, резюме, відгуки, статуси відгуків, особисті кабінети, пошук, фільтрацію, модерацію, автоматичну архівацію, email-нотифікації, преміум-послуги, звіти, AJAX-інтерактив і логування змін. | |||
== Примітка == | == Примітка == | ||
Сайт пошуку роботи | Сайт пошуку роботи потрібен рекрутинговим агентствам, HR-порталам, біржам фрілансу, корпоративним порталам вакансій, галузевим платформам і компаніям, які хочуть автоматизувати підбір персоналу. | ||
Такий модуль допомагає швидко з’єднувати кандидатів і роботодавців, структурувати вакансії та резюме, контролювати відгуки, бачити активність користувачів і підвищувати ефективність рекрутингу. | |||
== Коротко == | |||
{| class="wikitable" style="width:100%;" | |||
! Питання | |||
! Відповідь | |||
|- | |||
| Що потрібно створити? | |||
| Модуль платформи пошуку роботи | |||
|- | |||
| Які довідники потрібні? | |||
| Категорії вакансій, регіони, типи зайнятості | |||
|- | |||
| Які головні об’єкти? | |||
| Вакансії, резюме і відгуки кандидатів | |||
|- | |||
| Хто користується системою? | |||
| Кандидати, роботодавці, модератори, адміністратори | |||
|- | |||
| Що робить кандидат? | |||
| Створює резюме, шукає вакансії, відгукується | |||
|- | |||
| Що робить роботодавець? | |||
| Створює вакансії, шукає резюме, переглядає відгуки | |||
|- | |||
| Які звіти потрібні? | |||
| Вакансії, резюме, відгуки, активність роботодавців, популярні категорії | |||
|- | |||
| Що є критичною вимогою? | |||
| Повний цикл: вакансія → резюме → пошук → відгук → статус | |||
|} | |||
== Див. також == | |||
* | * [[K2 Cloud ERP|K2 ERP]] | ||
* | * [[K2 ERP]] | ||
* | * [[Атестаційні завдання K2 ERP]] | ||
* [[HRM]] | |||
* [[CRM]] | |||
* [[Рекрутинг]] | |||
* [[Вакансії]] | |||
* [[Резюме]] | |||
* [[Сайт роботи]] | |||
* [[Дошка оголошень]] | |||
* [[Особистий кабінет]] | |||
* [[Модерація]] | |||
* [[AJAX]] | |||
[[Категорія:K2 ERP]] | |||
[[Категорія:Атестаційні завдання K2]] | |||
[[Категорія:Сайт роботи]] | |||
[[Категорія:HRM]] | |||
[[Категорія:Рекрутинг]] | |||
[[Категорія:Вакансії]] | |||
[[Категорія:Корпоративна Wiki]] | |||