Атестаційні завдання K2 ERP/Сайт роботи: відмінності між версіями

Створена сторінка: = Модуль платформи пошуку роботи: вакансії, резюме, відгуки кандидатів = == Реальний бізнес-контекст == Компанія створює сайт для пошуку роботи і підбору персоналу: * роботодавці розміщують вакансії; * кандидати створюють резюме і відгукуються на вакан...
 
Немає опису редагування
 
Рядок 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-повідомлення про нові вакансії, відгуки і статуси
|-
| Преміум-послуги
| Підняття, виділення або просування вакансій
|-
| Звіти
| Аналітика по вакансіях, резюме, відгуках і користувачах
|}
 
== Довідник «Категорії вакансій» ==


* роботодавці розміщують вакансії;
Категорії вакансій потрібні для структурування вакансій і резюме.
* кандидати створюють резюме і відгукуються на вакансії;
* адміністрація модерує контент;
* користувачі шукають роботу або працівників через зручну фільтрацію.


== Основні завдання ==
== Приклади категорій ==


=== 1. Структура довідників ===
* IT;
* маркетинг;
* продажі;
* будівництво;
* медицина;
* освіта;
* логістика;
* виробництво;
* фінанси;
* бухгалтерія;
* адміністративний персонал;
* HoReCa;
* робочі спеціальності.


==== Довідник «Категорії вакансій» ====
== Поля категорії ==
 
{| class="wikitable" style="width:100%;"
! Поле
! Опис
|-
| Назва категорії
| Наприклад: IT, маркетинг, медицина, продажі
|-
| Батьківська категорія
| Опціонально, для побудови ієрархії
|-
| Опис
| Короткий опис напряму
|-
| Активність
| Чи доступна категорія для вибору
|}


Поля довідника:
== Довідник «Регіони» ==


* назва категорії, наприклад:
Регіони потрібні для географічного пошуку вакансій і резюме.
** 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-сповіщення про нові вакансії.
 
== Пошук вакансій ==


=== 2. База «Вакансії» ===
Пошук вакансій має працювати по ключових словах і фільтрах.


==== Колонки бази ====
== Поля пошуку вакансій ==


* назва вакансії;
Пошук повинен перевіряти:
* компанія;
 
* категорія;
* назву вакансії;
* регіон;
* зарплата:
** від;
** до;
* тип зайнятості;
* опис вакансії;
* опис вакансії;
* вимоги;
* вимоги;
* переваги;
* обов’язки;
* статус:
* назву компанії.
** активна;
 
** на модерації;
== Фільтри вакансій ==
** завершена;
 
* дата публікації;
Система повинна підтримувати фільтрацію за:
* термін актуальності.
 
* категорією;
* регіоном;
* містом;
* типом зайнятості;
* форматом роботи;
* зарплатою від;
* зарплатою до;
* датою публікації;
* компанією.
 
== Сортування вакансій ==
 
Сортування вакансій може виконуватися:
 
* за датою публікації;
* за зарплатою зростання;
* за зарплатою спадання;
* за релевантністю;
* за преміум-статусом.
 
== Пошук резюме ==
 
Пошук резюме потрібен роботодавцям.
 
== Поля пошуку резюме ==
 
Пошук повинен перевіряти:
 
* бажану посаду;
* навички;
* досвід;
* освіту;
* опис кандидата.
 
== Фільтри резюме ==
 
Система повинна підтримувати фільтрацію за:
 
* категорією;
* регіоном;
* типом зайнятості;
* форматом роботи;
* очікуваною зарплатою;
* досвідом роботи;
* видимістю, для адміністратора.
 
== Модерація ==
 
Модерація потрібна для контролю якості вакансій, резюме і профілів роботодавців.
 
== Що може модеруватися ==
 
* вакансії;
* резюме;
* компанії;
* фото профілю;
* опис вакансії;
* контактні дані;
* преміум-публікації.
 
== Дії модератора ==
 
Модератор повинен мати можливість:
 
* схвалити вакансію;
* відхилити вакансію;
* вказати причину відхилення;
* приховати резюме;
* заблокувати роботодавця або кандидата;
* повернути матеріал на редагування;
* переглянути історію змін.
 
== Автоматична архівація вакансій ==
 
Вакансія повинна автоматично переходити в архів після завершення строку актуальності.
 
Наприклад:
 
<pre>
Термін актуальності вакансії = 30 днів
</pre>
 
Після завершення строку система повинна:
 
* змінити статус вакансії на '''«Архівна»''';
* прибрати її з публічного пошуку;
* залишити в кабінеті роботодавця;
* надіслати роботодавцю повідомлення;
* запропонувати поновити вакансію.
 
<div style="border:3px solid #b71c1c; background:#ffebee; padding:14px; margin:16px 0;">
'''Критично.''' Архівні, завершені або відхилені вакансії не повинні показуватися кандидатам як активні.
</div>
 
== Email-нотифікації ==
 
Модуль має підтримувати email-сповіщення.
 
== Події для кандидата ==
 
Кандидату бажано надсилати повідомлення, коли:
 
* резюме створено;
* резюме схвалено або відхилено;
* з’явилася нова вакансія за збереженим пошуком;
* роботодавець переглянув відгук;
* статус відгуку змінено;
* кандидата запросили на співбесіду.
 
== Події для роботодавця ==
 
Роботодавцю бажано надсилати повідомлення, коли:
 
* вакансію створено;
* вакансію схвалено або відхилено;
* отримано новий відгук;
* вакансія скоро завершить строк дії;
* вакансію архівовано;
* кандидат оновив резюме, якщо він уже відгукувався.
 
== Преміум-послуги ==
 
Опціонально модуль може підтримувати платні або службові преміум-послуги.
 
== Приклади преміум-послуг ==
 
* підняття вакансії у списку;
* виділення вакансії кольором або рамкою;
* закріплення вакансії вгорі списку;
* показ вакансії в рекомендованих;
* розширена статистика;
* доступ до бази резюме;
* брендована сторінка компанії.


==== Функціонал ====
== Поля преміум-послуги ==


* публікація вакансії роботодавцем через форму;
{| class="wikitable" style="width:100%;"
* автоматичний перехід вакансії в архів після закінчення терміну;
! Поле
* можливість редагування і оновлення вакансії.
! Опис
|-
| Назва послуги
| Наприклад: підняття вакансії
|-
| Тип
| Виділення, підняття, закріплення, доступ
|-
| Строк дії
| Скільки днів працює послуга
|-
| Вартість
| Ціна послуги
|-
| Статус
| Активна або неактивна
|}
 
== Збережені пошуки ==


=== 3. База «Резюме кандидатів» ===
Опціонально кандидат може зберегти пошуковий запит.


==== Колонки бази ====
Збережений пошук може містити:


* ПІБ;
* категорію;
* позиція, яку шукає;
* категорія;
* регіон;
* регіон;
* досвід роботи;
* освіта;
* очікувана зарплата;
* тип зайнятості;
* тип зайнятості;
* контактна інформація;
* зарплату;
* фото профілю — опціонально;
* ключові слова.
* опис себе.
 
Система може надсилати кандидату нові вакансії, які відповідають збереженому пошуку.
 
== Обрані вакансії ==
 
Кандидат може додавати вакансії в обране.
 
Обране дозволяє:
 
* зберегти цікаву вакансію;
* повернутися до неї пізніше;
* порівняти кілька вакансій;
* швидше відгукнутися.
 
== Звіти ==
 
== Звіт «Вакансії за період» ==
 
Звіт показує створені вакансії за вибраний період.
 
У звіті потрібно відображати:


==== Функціонал ====
* дату;
* кількість створених вакансій;
* кількість активних вакансій;
* кількість вакансій на модерації;
* кількість завершених вакансій;
* кількість архівних вакансій.


* створення резюме через форму;
== Звіт «Резюме за період» ==
* можливість редагування резюме;
* видимість резюме:
** публічне;
** приховане.


=== 4. Відгуки на вакансії ===
Звіт показує активність кандидатів.


Функціонал:
У звіті потрібно відображати:


* кандидати можуть натиснути «Відгукнутися на вакансію»;
* дату;
* відправка свого резюме роботодавцю;
* кількість створених резюме;
* фіксація факту відгуку в системі для перегляду роботодавцем.
* кількість публічних резюме;
* кількість прихованих резюме;
* кількість оновлених резюме.


=== 5. Процеси пошуку і фільтрації ===
== Звіт «Відгуки кандидатів» ==


Пошук вакансій:
Звіт показує активність відгуків.


* пошук по ключовим словам:
У звіті потрібно відображати:
** назва;
** опис.


Фільтрація вакансій:
* вакансію;
* компанію;
* кількість відгуків;
* кількість переглянутих;
* кількість запрошених;
* кількість відхилених;
* кількість прийнятих.


* за категорією;
== Звіт «Активність роботодавців» ==
* за регіоном;
* за типом зайнятості;
* за зарплатою.


Пошук резюме для роботодавців:
Звіт показує, які роботодавці найактивніше користуються платформою.


* за категорією;
У звіті потрібно відображати:
* за регіоном;
* за типом зайнятості;
* за очікуваною зарплатою;
* за ключовими словами.


=== 6. Додаткові функції ===
* компанію;
* кількість вакансій;
* кількість активних вакансій;
* кількість отриманих відгуків;
* дату останньої публікації.


==== Реєстрація та особистий кабінет ====
== Звіт «Популярні категорії» ==


Особистий кабінет для роботодавців:
Звіт показує найбільш активні напрями.


* керування вакансіями;
У звіті потрібно відображати:
* перегляд відгуків.


Особистий кабінет для кандидатів:
* категорію;
* кількість вакансій;
* кількість резюме;
* кількість відгуків;
* середню зарплату, якщо використовується.


* керування резюме;
== AJAX-інтерактив ==
* перегляд статусу відгуків.


==== AJAX-функціональність ====
Інтерфейс має працювати швидко та без зайвого перезавантаження сторінок.


* робота через AJAX для миттєвого пошуку;
Через AJAX мають працювати:
* відправлення відгуків без перезавантаження сторінки.


==== Нотифікації на email ====
* створення вакансії;
* створення резюме;
* пошук вакансій;
* пошук резюме;
* фільтрація;
* сортування;
* відгук на вакансію;
* зміна статусу відгуку;
* додавання вакансії в обране;
* зміна видимості резюме;
* модерація;
* оновлення списків і звітів.


* кандидату — про нові вакансії;
== Логування змін ==
* роботодавцю — про нові відгуки.


==== Преміум-послуги ====
Модуль повинен фіксувати важливі зміни.


* підняття вакансій у списку;
Журнал змін має зберігати:
* виділення вакансій кольором або рамкою.
 
* хто створив вакансію;
* хто змінив вакансію;
* хто відправив вакансію на модерацію;
* хто схвалив або відхилив вакансію;
* хто створив резюме;
* хто змінив видимість резюме;
* хто створив відгук;
* хто змінив статус відгуку;
* хто архівував вакансію;
* хто активував преміум-послугу;
* дату й час зміни;
* старе та нове значення, якщо це можливо.
 
== Права доступу ==
 
Модуль має підтримувати розмежування прав.
 
{| 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, AJAX, Fetch API або Axios
| 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]]