Атестаційні завдання K2 ERP/Пошук на роботу морякам: відмінності між версіями
R (обговорення | внесок) Створена сторінка: = Модуль пошуку, обліку і працевлаштування моряків (Crew Management System) = == Реальний бізнес-контекст == Агентство із працевлаштування моряків працює над пошуком кандидатів для різних судновласників. Потрібно: * формувати базу резюме моряків; * створювати ва... |
R (обговорення | внесок) Немає опису редагування |
||
| Рядок 1: | Рядок 1: | ||
= Модуль пошуку, обліку і працевлаштування моряків | {{DISPLAYTITLE:Атестаційні завдання K2 ERP/Пошук на роботу морякам}} | ||
'''Атестаційне завдання K2 ERP — Пошук на роботу морякам''' — це практична задача для перевірки навичок розробника або впроваджувача [[K2 ERP]] у створенні модуля пошуку, обліку, підбору та працевлаштування моряків. | |||
Модуль має працювати як [[Crew Management System]]: вести базу кандидатів, сертифікати, документи, судна, вакансії, вимоги судновласників, автоматичний підбір моряків, пропозиції працевлаштування, контракти, терміни контрактів і планування замін екіпажу. | |||
<div style="border:3px solid #1565c0; background:#e3f2fd; padding:14px; margin:16px 0;"> | |||
'''Коротко.''' Потрібно реалізувати модуль для крюїнгового агентства: база моряків, анкети, документи, сертифікати, судна, вакансії, автоматичний пошук кандидатів, статуси працевлаштування, контракти, нагадування про закінчення сертифікатів і планування замін екіпажу. | |||
</div> | |||
__TOC__ | |||
== Назва завдання == | |||
'''Модуль пошуку, обліку і працевлаштування моряків: Crew Management System'''. | |||
== Мета завдання == | |||
Мета завдання — створити в K2 ERP модуль для автоматизації роботи крюїнгового агентства або судноплавної компанії. | |||
Система повинна дозволяти: | |||
* вести довідник посад моряків; | |||
* вести довідник суден; | |||
* вести судновласників; | |||
* створювати анкету моряка; | |||
* зберігати досвід роботи моряка; | |||
* вести сертифікати й документи; | |||
* контролювати строки дії сертифікатів; | |||
* створювати вакансії на судна; | |||
* задавати вимоги до кандидата; | |||
* автоматично підбирати моряків під вакансію; | |||
* створювати пропозиції працевлаштування; | |||
* фіксувати статус кандидата; | |||
* формувати контракт; | |||
* контролювати строки контрактів; | |||
* планувати заміни екіпажу; | |||
* надсилати сповіщення; | |||
* експортувати базу моряків, вакансії та звіти. | |||
<div style="border:3px solid #2e7d32; background:#e8f5e9; padding:14px; margin:16px 0;"> | |||
'''Головний принцип.''' Crew Management System — це не просто база резюме. Це система, яка пов’язує моряка, його документи, досвід, доступність, вакансію, судно, контракт і майбутню заміну екіпажу. | |||
</div> | |||
== Реальний бізнес-контекст == | == Реальний бізнес-контекст == | ||
Крюїнгове агентство або судноплавна компанія шукає моряків для різних судновласників і суден. Для кожної вакансії важливі не лише посада і зарплата, а й тип судна, досвід кандидата, сертифікація, рівень англійської, дата доступності та чинність документів. | |||
У роботі агентства потрібно контролювати: | |||
* хто з моряків доступний для роботи; | |||
* які сертифікати має кандидат; | |||
* коли закінчуються паспорти, медичні довідки та сертифікати; | |||
* на яких типах суден кандидат працював раніше; | |||
* які вакансії відкриті; | |||
* які кандидати підходять під вимоги судновласника; | |||
* хто прийняв або відхилив пропозицію; | |||
* коли починається і закінчується контракт; | |||
* кого потрібно готувати на заміну екіпажу. | |||
Без автоматизованої системи ці дані часто ведуться в таблицях, пошті та месенджерах, що призводить до втрати кандидатів, прострочених документів і затримок у закритті вакансій. | |||
== Основний бізнес-процес == | |||
Типовий процес роботи крюїнгового агентства виглядає так: | |||
# у систему вносяться посади моряків; | |||
# створюються судна та судновласники; | |||
# у базу додається анкета моряка; | |||
# до анкети додаються документи, сертифікати й досвід; | |||
# система контролює строки дії документів; | |||
# менеджер створює вакансію на судно; | |||
# у вакансії задаються вимоги до кандидата; | |||
# система підбирає моряків, які відповідають вимогам; | |||
# менеджер створює пропозицію кандидату; | |||
# кандидат приймає або відхиляє пропозицію; | |||
# формується контракт; | |||
# кандидат переходить у статус працевлаштованого; | |||
# система контролює закінчення контракту; | |||
# менеджер планує заміну екіпажу. | |||
== Основні об’єкти модуля == | |||
{| class="wikitable" style="width:100%;" | |||
! Об’єкт | |||
! Призначення | |||
|- | |||
| Позиції моряків | |||
| Посади: капітан, механік, електромеханік, кок, матрос тощо | |||
|- | |||
| Судна | |||
| Судна, на які відкриваються вакансії | |||
|- | |||
| Судновласники | |||
| Компанії, для яких підбирається екіпаж | |||
|- | |||
| Кандидати / моряки | |||
| Анкети моряків із контактами, досвідом і документами | |||
|- | |||
| Сертифікати | |||
| STCW, IMO, медичні та інші документи моряка | |||
|- | |||
| Досвід роботи | |||
| Контракти, судна, посади, типи суден і тривалість роботи | |||
|- | |||
| Вакансії | |||
| Відкриті позиції на судна | |||
|- | |||
| Підбір кандидатів | |||
| Пошук моряків, які відповідають вимогам вакансії | |||
|- | |||
| Пропозиції працевлаштування | |||
| Запрошення кандидата на конкретну вакансію | |||
|- | |||
| Контракти | |||
| Документи працевлаштування моряка | |||
|- | |||
| Заміни екіпажу | |||
| Планування заміни моряків після завершення контрактів | |||
|- | |||
| Нотифікації | |||
| Сповіщення про сертифікати, контракти, вакансії та зміни статусів | |||
|- | |||
| Звіти | |||
| Аналітика по кандидатах, вакансіях, контрактах і закриттю позицій | |||
|} | |||
== Довідник «Позиції моряків» == | |||
Довідник позицій моряків містить посади, на які можуть відкриватися вакансії. | |||
== Приклади посад == | |||
* капітан; | |||
* старший помічник капітана; | |||
* другий помічник капітана; | |||
* старший механік; | |||
* другий механік; | |||
* електромеханік; | |||
* боцман; | |||
* матрос; | |||
* моторист; | |||
* кок; | |||
* стюард. | |||
== Поля позиції моряка == | |||
{| class="wikitable" style="width:100%;" | |||
! Поле | |||
! Опис | |||
|- | |||
| Назва посади | |||
| Наприклад: Captain, Chief Engineer, Electrician, Cook, AB | |||
|- | |||
| Категорія | |||
| Deck Department, Engine Department, Hotel Department або інша | |||
|- | |||
| Рівень сертифікації | |||
| Вимоги STCW або інші стандарти | |||
|- | |||
| Мінімальний досвід | |||
| Опціонально, мінімальна кількість контрактів або місяців | |||
|- | |||
| Активність | |||
| Чи використовується посада в поточних вакансіях | |||
|} | |||
== Категорії посад == | |||
{| class="wikitable" style="width:100%;" | |||
! Категорія | |||
! Приклади посад | |||
|- | |||
| Deck Department | |||
| Captain, Chief Officer, Second Officer, AB, OS | |||
|- | |||
| Engine Department | |||
| Chief Engineer, Second Engineer, Electrician, Motorman | |||
|- | |||
| Hotel Department | |||
| Cook, Steward, Housekeeping, Service Staff | |||
|} | |||
== Довідник «Судна» == | |||
Довідник суден містить судна, для яких відкриваються вакансії або ведеться екіпаж. | |||
== Поля судна == | |||
{| class="wikitable" style="width:100%;" | |||
! Поле | |||
! Опис | |||
|- | |||
| Назва судна | |||
| Назва судна | |||
|- | |||
| Тип судна | |||
| Bulk Carrier, Container, Tanker, Cruise Ship або інший тип | |||
|- | |||
| Судновласник | |||
| Компанія-власник або оператор судна | |||
|- | |||
| Прапор судна | |||
| Країна прапора | |||
|- | |||
| DWT | |||
| Дедвейт судна | |||
|- | |||
| GRT | |||
| Валова місткість | |||
|- | |||
| Тип двигуна | |||
| Основний тип двигуна | |||
|- | |||
| Рік побудови | |||
| Опціонально | |||
|- | |||
| Статус | |||
| Активне, архівне, не використовується | |||
|} | |||
== Типи суден == | |||
{| class="wikitable" style="width:100%;" | |||
! Тип судна | |||
! Опис | |||
|- | |||
| Bulk Carrier | |||
| Балкер для перевезення навалочних вантажів | |||
|- | |||
| Container | |||
| Контейнеровоз | |||
|- | |||
| Tanker | |||
| Танкер | |||
|- | |||
| Cruise Ship | |||
| Круїзне судно | |||
|- | |||
| General Cargo | |||
| Судно для генеральних вантажів | |||
|- | |||
| Offshore Vessel | |||
| Офшорне судно | |||
|} | |||
== Довідник «Судновласники» == | |||
Довідник судновласників містить компанії, які замовляють підбір екіпажу. | |||
== Поля судновласника == | |||
{| class="wikitable" style="width:100%;" | |||
! Поле | |||
! Опис | |||
|- | |||
| Назва компанії | |||
| Назва судновласника або оператора | |||
|- | |||
| Країна | |||
| Країна реєстрації або роботи | |||
|- | |||
| Контактна особа | |||
| Представник судновласника | |||
|- | |||
| Email | |||
| Контактна пошта | |||
|- | |||
| Телефон | |||
| Контактний номер | |||
|- | |||
| Умови співпраці | |||
| Коментар щодо правил підбору екіпажу | |||
|- | |||
| Статус | |||
| Активний або неактивний | |||
|} | |||
== База «Кандидати» == | |||
База кандидатів містить анкети моряків. | |||
Картка моряка має бути центральним місцем, де зібрані особисті дані, контакти, досвід, сертифікати, документи, доступність, історія вакансій і контрактів. | |||
== Колонки бази кандидатів == | |||
{| class="wikitable" style="width:100%;" | |||
! Колонка | |||
! Опис | |||
|- | |||
| ПІБ | |||
| Прізвище, ім’я та по батькові моряка | |||
|- | |||
| Дата народження | |||
| Дата народження кандидата | |||
|- | |||
| Позиція | |||
| Основна посада моряка | |||
|- | |||
| Досвід | |||
| Кількість контрактів або стаж у місяцях | |||
|- | |||
| Сертифікати | |||
| Наявність IMO, STCW та інших документів | |||
|- | |||
| Рівень англійської | |||
| Оцінка володіння англійською мовою | |||
|- | |||
| Дата доступності | |||
| Коли кандидат може вийти в рейс | |||
|- | |||
| Місце проживання | |||
| Країна, місто | |||
|- | |||
| Телефон | |||
| Контактний номер | |||
|- | |||
| Email | |||
| Електронна адреса | |||
|- | |||
| Статус | |||
| Доступний, запропоновано, на контракті, недоступний, архів | |||
|} | |||
== Поля анкети моряка == | |||
{| class="wikitable" style="width:100%;" | |||
! Поле | |||
! Опис | |||
|- | |||
| ПІБ | |||
| Повне ім’я моряка | |||
|- | |||
| Дата народження | |||
| Для перевірки віку та документів | |||
|- | |||
| Громадянство | |||
| Країна громадянства | |||
|- | |||
| Місце проживання | |||
| Країна, місто | |||
|- | |||
| Основна позиція | |||
| Посада, на яку претендує кандидат | |||
|- | |||
| Додаткові позиції | |||
| Інші посади, які може виконувати кандидат | |||
|- | |||
| Рівень англійської | |||
| Beginner, Intermediate, Upper-Intermediate, Advanced або інша шкала | |||
|- | |||
| Дата доступності | |||
| Коли кандидат готовий до роботи | |||
|- | |||
| Очікувана зарплата | |||
| Бажаний рівень оплати | |||
|- | |||
| Телефон | |||
| Контактний номер | |||
|- | |||
| Email | |||
| Електронна адреса | |||
|- | |||
| Коментар менеджера | |||
| Внутрішні примітки | |||
|} | |||
== Статуси кандидата == | |||
{| class="wikitable" style="width:100%;" | |||
! Статус | |||
! Значення | |||
|- | |||
| Новий | |||
| Анкету створено, але кандидат ще не опрацьований | |||
|- | |||
| Доступний | |||
| Кандидат готовий до пропозицій | |||
|- | |||
| Запропоновано | |||
| Кандидату запропоновано вакансію | |||
|- | |||
| Прийняв пропозицію | |||
| Кандидат погодився на вакансію | |||
|- | |||
| Відмовився | |||
| Кандидат відхилив пропозицію | |||
|- | |||
| На контракті | |||
| Кандидат працює на судні | |||
|- | |||
| Недоступний | |||
| Кандидат тимчасово не шукає роботу | |||
|- | |||
| Архів | |||
| Анкета не використовується в активному підборі | |||
|} | |||
== Документи і сертифікати моряка == | |||
Модуль має дозволяти зберігати копії документів і сертифікатів. | |||
== Приклади документів == | |||
* паспорт; | |||
* закордонний паспорт; | |||
* seaman’s book; | |||
* STCW-сертифікати; | |||
* медична довідка; | |||
* сертифікати безпеки; | |||
* рекомендації; | |||
* резюме; | |||
* дипломи; | |||
* візи. | |||
== Поля документа / сертифіката == | |||
* | {| class="wikitable" style="width:100%;" | ||
* | ! Поле | ||
* | ! Опис | ||
* | |- | ||
* | | Тип документа | ||
| Паспорт, STCW, медична довідка, рекомендація тощо | |||
|- | |||
| Номер документа | |||
| Номер сертифіката або документа | |||
|- | |||
| Дата видачі | |||
| Коли документ виданий | |||
|- | |||
| Дата завершення | |||
| До якої дати документ чинний | |||
|- | |||
| Файл | |||
| Завантажена копія документа | |||
|- | |||
| Статус | |||
| Чинний, скоро закінчується, прострочений | |||
|- | |||
| Коментар | |||
| Додаткова інформація | |||
|} | |||
<div style="border:3px solid #b71c1c; background:#ffebee; padding:14px; margin:16px 0;"> | |||
'''Критично.''' Кандидат із простроченим обов’язковим сертифікатом не повинен автоматично потрапляти в список повністю придатних кандидатів для вакансії. | |||
</div> | |||
== Контроль строків сертифікатів == | |||
Система повинна автоматично контролювати закінчення строку дії документів. | |||
Необхідно показувати: | |||
* чинні документи; | |||
* документи, що скоро закінчуються; | |||
* прострочені документи; | |||
* відсутні обов’язкові документи. | |||
== Нагадування по сертифікатах == | |||
Нотифікації потрібно надсилати: | |||
* за 90 днів до завершення; | |||
* за 30 днів до завершення; | |||
* за 7 днів до завершення; | |||
* у день завершення; | |||
* після прострочення. | |||
Точні строки можна винести в налаштування. | |||
== Досвід роботи моряка == | |||
Картка моряка повинна містити історію контрактів і досвіду. | |||
== Поля досвіду == | |||
{| class="wikitable" style="width:100%;" | |||
! Поле | |||
! Опис | |||
|- | |||
| Судно | |||
| Назва судна, на якому працював кандидат | |||
|- | |||
| Тип судна | |||
| Bulk Carrier, Container, Tanker тощо | |||
|- | |||
| Позиція | |||
| Посада на судні | |||
|- | |||
| Дата початку | |||
| Початок контракту | |||
|- | |||
| Дата завершення | |||
| Кінець контракту | |||
|- | |||
| Тривалість | |||
| Розраховується в місяцях | |||
|- | |||
| Судновласник | |||
| Компанія або оператор | |||
|- | |||
| Рекомендація | |||
| Файл або коментар | |||
|} | |||
== Журнал «Вакансії» == | |||
Журнал вакансій містить відкриті позиції на судна. | |||
== Колонки журналу вакансій == | |||
{| class="wikitable" style="width:100%;" | |||
! Колонка | |||
! Опис | |||
|- | |||
| Номер вакансії | |||
| Унікальний номер вакансії | |||
|- | |||
| Судно | |||
| Судно, на яке потрібен кандидат | |||
|- | |||
| Судновласник | |||
| Компанія, для якої ведеться підбір | |||
|- | |||
| Позиція | |||
| Посада, на яку шукається моряк | |||
|- | |||
| Зарплата, USD | |||
| Рівень оплати | |||
|- | |||
| Початок контракту | |||
| Дата, коли кандидат має вийти на контракт | |||
|- | |||
| Тривалість контракту | |||
| Кількість місяців | |||
|- | |||
| Статус вакансії | |||
| Відкрита, підбір, заповнена, скасована | |||
|- | |||
| Менеджер | |||
| Відповідальний рекрутер | |||
|} | |||
== Поля вакансії == | |||
{| class="wikitable" style="width:100%;" | |||
! Поле | |||
! Опис | |||
|- | |||
| Номер вакансії | |||
| Генерується автоматично або вводиться вручну | |||
|- | |||
| Судно | |||
| Вибір із довідника суден | |||
|- | |||
| Позиція | |||
| Яка посада потрібна | |||
|- | |||
| Зарплата | |||
| Сума та валюта оплати | |||
|- | |||
| Початок контракту | |||
| Дата старту | |||
|- | |||
| Тривалість контракту | |||
| Тривалість у місяцях | |||
|- | |||
| Тип судна | |||
| Вимога до досвіду кандидата | |||
|- | |||
| Мінімальний стаж | |||
| Мінімальна кількість місяців або контрактів | |||
|- | |||
| Обов’язкові сертифікати | |||
| Перелік документів, які має мати кандидат | |||
|- | |||
| Мінімальний рівень англійської | |||
| Вимога до мови | |||
|- | |||
| Коментар судновласника | |||
| Додаткові умови | |||
|} | |||
== | == Статуси вакансії == | ||
=== | {| class="wikitable" style="width:100%;" | ||
! Статус | |||
! Значення | |||
|- | |||
| Відкрита | |||
| Вакансія створена і доступна для підбору | |||
|- | |||
| Підбір | |||
| Менеджер розглядає кандидатів | |||
|- | |||
| Кандидат запропонований | |||
| Один або кілька кандидатів відправлені на розгляд | |||
|- | |||
| Заповнена | |||
| Кандидат прийнятий і контракт оформлено | |||
|- | |||
| Скасована | |||
| Вакансія більше не актуальна | |||
|} | |||
== Підбір моряків == | |||
Підбір моряків — ключова функція модуля. | |||
Система повинна знаходити кандидатів, які відповідають параметрам вакансії. | |||
== Критерії підбору == | |||
Автоматизований пошук має враховувати: | |||
* посаду; | |||
* досвід на потрібному типі судна; | |||
* кількість контрактів; | |||
* загальний стаж; | |||
* валідні сертифікати; | |||
* рівень англійської; | |||
* дату доступності; | |||
* статус кандидата; | |||
* очікувану зарплату; | |||
* місце проживання, якщо це важливо. | |||
== Результати підбору == | |||
У результаті пошуку система повинна показувати список кандидатів. | |||
У списку потрібно бачити: | |||
* ПІБ; | * ПІБ; | ||
* | * позицію; | ||
* досвід; | |||
* досвід | * типи суден; | ||
* | |||
* рівень англійської; | * рівень англійської; | ||
* | * дату доступності; | ||
* | * стан сертифікатів; | ||
* | * відповідність вимогам; | ||
* | * причини невідповідності, якщо кандидат не проходить по окремих параметрах. | ||
<div style="border:3px solid #1565c0; background:#e3f2fd; padding:14px; margin:16px 0;"> | |||
'''Практичний сенс.''' Система має не лише показати кандидатів, а й пояснити, чому кандидат підходить або не підходить: не вистачає досвіду, сертифікат прострочений, дата доступності пізніша за початок контракту тощо. | |||
</div> | |||
== Пропозиція працевлаштування == | |||
Після підбору менеджер створює пропозицію кандидату. | |||
== Поля пропозиції == | |||
{| class="wikitable" style="width:100%;" | |||
! Поле | |||
! Опис | |||
|- | |||
| Кандидат | |||
| Моряк, якому пропонується вакансія | |||
|- | |||
| Вакансія | |||
| Вакансія, на яку пропонується кандидат | |||
|- | |||
| Дата пропозиції | |||
| Коли зроблено пропозицію | |||
|- | |||
| Зарплата | |||
| Умови оплати | |||
|- | |||
| Початок контракту | |||
| Дата старту | |||
|- | |||
| Тривалість | |||
| Тривалість контракту | |||
|- | |||
| Статус пропозиції | |||
| Запропоновано, прийняв, відмовився, на розгляді | |||
|- | |||
| Коментар | |||
| Примітка менеджера або кандидата | |||
|} | |||
== | == Статуси пропозиції == | ||
{| class="wikitable" style="width:100%;" | |||
! Статус | |||
! Значення | |||
|- | |||
| Запропоновано | |||
| Кандидату надіслано пропозицію | |||
|- | |||
| На розгляді | |||
| Кандидат або судновласник розглядає пропозицію | |||
|- | |||
| Прийняв | |||
| Кандидат погодився | |||
|- | |||
| Відмовився | |||
| Кандидат відмовився | |||
|- | |||
| Відхилено судновласником | |||
| Судновласник не погодив кандидата | |||
|} | |||
== | == Контрактування == | ||
==== | Після прийняття пропозиції формується контракт моряка. | ||
== Поля контракту == | |||
{| class="wikitable" style="width:100%;" | |||
! Поле | |||
! Опис | |||
|- | |||
| Номер контракту | |||
| Унікальний номер документа | |||
|- | |||
| Кандидат | |||
| Моряк, з яким укладається контракт | |||
|- | |||
| Судно | |||
| Судно, на яке йде кандидат | |||
|- | |||
| Посада | |||
| Позиція в екіпажі | |||
|- | |||
| Судновласник | |||
| Компанія або оператор | |||
|- | |||
| Дата початку | |||
| Початок контракту | |||
|- | |||
| Дата завершення | |||
| Планове завершення контракту | |||
|- | |||
| Тривалість | |||
| Тривалість у місяцях | |||
|- | |||
| Зарплата | |||
| Сума та валюта | |||
|- | |||
| Статус | |||
| Підготовлений, підписаний, активний, завершений, скасований | |||
|} | |||
== Формування контракту == | |||
Контракт має формуватися автоматично на основі: | |||
* даних моряка; | |||
* даних судна; | |||
* посади; | |||
* зарплати; | |||
* дат контракту; | |||
* судновласника; | |||
* умов вакансії. | |||
Формат документа: | |||
* PDF; | |||
* DOCX, якщо потрібне редагування перед підписанням. | |||
== Планування замін екіпажу == | |||
Модуль має контролювати завершення контрактів і допомагати планувати заміни. | |||
== Логіка планування заміни == | |||
Система повинна: | |||
* бачити дату завершення контракту; | |||
* показувати контракти, які скоро завершуються; | |||
* створювати потребу в заміні; | |||
* пропонувати кандидатів на заміну; | |||
* враховувати дату доступності кандидатів; | |||
* не пропонувати кандидатів із простроченими обов’язковими документами. | |||
== Нагадування про завершення контракту == | |||
Система має надсилати сповіщення: | |||
* за 60 днів до завершення контракту; | |||
* за 30 днів; | |||
* за 14 днів; | |||
* за 7 днів; | |||
* у день завершення. | |||
== Нотифікації == | |||
Модуль повинен підтримувати автоматичні сповіщення. | |||
== Події для сповіщень == | |||
Сповіщення бажано надсилати, коли: | |||
* закінчується сертифікат; | |||
* закінчується паспорт або медична довідка; | |||
* створена нова вакансія; | |||
* кандидат підходить під вакансію; | |||
* кандидату зроблено пропозицію; | |||
* кандидат прийняв або відхилив пропозицію; | |||
* контракт скоро завершується; | |||
* потрібно планувати заміну екіпажу. | |||
== Журнал змін статусів == | |||
Система повинна зберігати історію зміни статусів кандидата, вакансії, пропозиції та контракту. | |||
Журнал має показувати: | |||
* хто змінив статус; | |||
* старий статус; | |||
* новий статус; | |||
* дату й час; | |||
* коментар. | |||
== Звітність == | |||
== Звіт «База моряків» == | |||
Звіт показує кандидатів за параметрами. | |||
У звіті потрібно відображати: | |||
* ПІБ; | |||
* позицію; | |||
* досвід; | |||
* рівень англійської; | |||
* дату доступності; | |||
* статус кандидата; | |||
* стан документів; | |||
* контактні дані. | |||
== Звіт «Відкриті вакансії» == | |||
Звіт показує всі активні вакансії. | |||
У звіті потрібно відображати: | |||
* номер вакансії; | * номер вакансії; | ||
* судно; | * судно; | ||
* | * судновласника; | ||
* | * позицію; | ||
* | * зарплату; | ||
* | * дату старту; | ||
* статус | * статус; | ||
* менеджера; | |||
* | * кількість підібраних кандидатів. | ||
* | |||
== | == Звіт «Підбір кандидатів» == | ||
Звіт показує, які кандидати були розглянуті по вакансії. | |||
У звіті потрібно відображати: | |||
* вакансію; | |||
* кандидата; | |||
* відповідність вимогам; | |||
* статус пропозиції; | |||
* коментар менеджера; | |||
* дату останньої зміни. | |||
== Звіт «Контракти і заміни» == | |||
* | Звіт показує активні контракти та потребу в замінах. | ||
* | |||
* | У звіті потрібно відображати: | ||
* | |||
* моряка; | |||
* судно; | |||
* позицію; | |||
* дату початку; | |||
* дату завершення; | |||
* кількість днів до завершення; | |||
* статус заміни; | |||
* рекомендованого кандидата на заміну, якщо є. | |||
== Звіт «Документи і сертифікати» == | |||
Звіт показує стан документів моряків. | |||
У звіті потрібно відображати: | |||
* моряка; | |||
* тип документа; | |||
* номер; | |||
* дату завершення; | |||
* статус; | |||
* кількість днів до завершення; | |||
* відповідального менеджера. | |||
== Експорт даних == | |||
Модуль має підтримувати експорт: | |||
* бази моряків; | |||
* вакансій; | |||
* списку кандидатів по вакансії; | |||
* контрактів; | |||
* звіту по сертифікатах; | |||
* звіту по замінах. | |||
Формати: | |||
* Excel; | |||
* PDF. | |||
== AJAX-інтерактив == | |||
Інтерфейс має працювати швидко та без зайвого перезавантаження сторінок. | |||
Через AJAX мають працювати: | |||
* створення анкети моряка; | |||
* пошук кандидата; | |||
* завантаження документів; | |||
* додавання сертифіката; | |||
* перевірка строку дії документа; | |||
* створення вакансії; | |||
* пошук кандидатів під вакансію; | |||
* створення пропозиції; | |||
* зміна статусу пропозиції; | |||
* формування контракту; | |||
* фільтрація журналів; | |||
* оновлення звітів. | |||
== Логування змін == | |||
Модуль повинен фіксувати важливі дії. | |||
Журнал змін має зберігати: | |||
* | * хто створив анкету моряка; | ||
* | * хто змінив контактні дані; | ||
* | * хто додав або видалив документ; | ||
* хто змінив дату доступності; | |||
* хто створив вакансію; | |||
* хто змінив вимоги вакансії; | |||
* хто створив пропозицію; | |||
* хто змінив статус кандидата; | |||
* хто сформував контракт; | |||
* хто закрив вакансію; | |||
* дату й час зміни; | |||
* старе та нове значення, якщо це можливо. | |||
== | == Права доступу == | ||
Модуль має підтримувати розмежування прав. | |||
{| class="wikitable" style="width:100%;" | |||
! Роль | |||
! Можливості | |||
|- | |||
| Рекрутер | |||
| Веде анкети моряків, вакансії, підбір і пропозиції | |||
|- | |||
| Старший рекрутер | |||
| Контролює роботу рекрутерів, статуси вакансій і якість підбору | |||
|- | |||
| Документ-менеджер | |||
| Перевіряє сертифікати, паспорти, медичні довідки та строки дії | |||
|- | |||
| Керівник агентства | |||
| Переглядає звіти, вакансії, контракти, ефективність і закриття позицій | |||
|- | |||
| Адміністратор | |||
| Налаштовує довідники, права, шаблони контрактів і службові параметри | |||
|} | |||
== Технічні вимоги == | == Технічні вимоги == | ||
{| class="wikitable" | {| class="wikitable" style="width:100%;" | ||
! Параметр | ! Параметр | ||
! Опис | ! Опис | ||
| Рядок 151: | Рядок 976: | ||
| K2 Cloud ERP на Python або PHP | | K2 Cloud ERP на Python або PHP | ||
|- | |- | ||
| | | База даних | ||
| PostgreSQL або MySQL | | PostgreSQL або MySQL | ||
|- | |- | ||
| Фронтенд | | Фронтенд | ||
| HTML5, JavaScript | | HTML5, JavaScript | ||
|- | |||
| AJAX | |||
| Axios або Fetch API | |||
|- | |- | ||
| UI-компоненти | | UI-компоненти | ||
| DataTables, Select2, Datepicker | | DataTables, Select2, Datepicker | ||
|- | |||
| Документи | |||
| Завантаження копій сертифікатів, паспортів, рекомендацій | |||
|- | |- | ||
| Друк | | Друк | ||
| | | PDF-контракти та резюме моряків | ||
|- | |||
| Експорт | |||
| Excel для бази моряків, вакансій і звітів | |||
|} | |} | ||
== | == Рекомендовані сутності бази даних == | ||
{| class="wikitable" | Для реалізації задачі доцільно передбачити такі сутності: | ||
* позиції моряків; | |||
* категорії посад; | |||
* судна; | |||
* типи суден; | |||
* судновласники; | |||
* кандидати; | |||
* контакти кандидатів; | |||
* документи кандидатів; | |||
* сертифікати; | |||
* досвід роботи; | |||
* вакансії; | |||
* вимоги вакансій; | |||
* результати підбору; | |||
* пропозиції працевлаштування; | |||
* контракти; | |||
* заміни екіпажу; | |||
* нотифікації; | |||
* шаблони контрактів; | |||
* журнал змін; | |||
* права доступу; | |||
* звіти. | |||
== Практичне завдання == | |||
У межах атестації потрібно продемонструвати робочий сценарій. | |||
Мінімальний сценарій: | |||
# створити позиції моряків; | |||
# створити типи суден; | |||
# створити судновласника; | |||
# створити судно; | |||
# створити анкету моряка; | |||
# додати контакти кандидата; | |||
# додати досвід роботи на суднах; | |||
# завантажити документи й сертифікати; | |||
# вказати строки дії сертифікатів; | |||
# перевірити нагадування про сертифікат, що скоро закінчується; | |||
# створити вакансію на судно; | |||
# задати вимоги до кандидата; | |||
# виконати автоматичний підбір моряків; | |||
# переглянути кандидатів, які підходять і не підходять; | |||
# створити пропозицію кандидату; | |||
# змінити статус пропозиції на '''«Прийняв»'''; | |||
# сформувати контракт; | |||
# перевести кандидата у статус '''«На контракті»'''; | |||
# створити нагадування про завершення контракту; | |||
# сформувати звіт відкритих вакансій; | |||
# сформувати звіт документів і сертифікатів; | |||
# сформувати звіт контрактів і замін; | |||
# експортувати базу кандидатів у Excel. | |||
== Критерії оцінювання == | |||
{| class="wikitable" style="width:100%;" | |||
! Критерій | ! Критерій | ||
! Бали | ! Бали | ||
! Що перевіряється | |||
|- | |- | ||
| Реалізація бази моряків та їх пошуку | | Реалізація бази моряків та їх пошуку | ||
| 20 | | 20 | ||
| Анкети, контакти, досвід, документи, сертифікати, пошук і фільтри | |||
|- | |- | ||
| Створення і управління вакансіями | | Створення і управління вакансіями | ||
| 20 | | 20 | ||
| Судна, судновласники, позиції, зарплата, строки, вимоги, статуси | |||
|- | |- | ||
| Механізм підбору моряків по вакансіях | | Механізм підбору моряків по вакансіях | ||
| 20 | | 20 | ||
| Автоматичний пошук за посадою, досвідом, типом судна, сертифікатами й доступністю | |||
|- | |- | ||
| Формування контрактів і планування замін | | Формування контрактів і планування замін | ||
| 20 | | 20 | ||
| Контракти, строки, статуси, завершення контракту, потреба в заміні | |||
|- | |- | ||
| Інтерактивність через AJAX і нотифікації | | Інтерактивність через AJAX і нотифікації | ||
| 20 | | 20 | ||
| AJAX-форми, документи, статуси, нагадування по сертифікатах, вакансіях і контрактах | |||
|- | |||
! Разом | |||
! 100 | |||
! Максимальна оцінка | |||
|} | |||
== Шкала оцінювання == | |||
{| class="wikitable" style="width:100%;" | |||
! Бали | |||
! Рівень | |||
! Опис | |||
|- | |||
| 90–100 | |||
| Відмінно | |||
| Модуль повністю працює: моряки, документи, судна, вакансії, підбір, пропозиції, контракти, заміни, нотифікації та звіти реалізовані коректно | |||
|- | |||
| 75–89 | |||
| Добре | |||
| Основна логіка працює, є незначні недоліки, які не руйнують процес крюїнгу | |||
|- | |||
| 60–74 | |||
| Зараховано | |||
| Базовий сценарій працює, але частина функцій реалізована неповно або потребує доопрацювання | |||
|- | |||
| 0–59 | |||
| Не зараховано | |||
| Відсутня критична логіка: база моряків, вакансії, підбір, документи, контракти або заміни | |||
|} | |} | ||
== Критичні помилки == | |||
Критичними помилками вважаються ситуації, коли: | |||
* неможливо створити анкету моряка; | |||
* неможливо додати сертифікат або документ; | |||
* система не контролює строки дії сертифікатів; | |||
* кандидат із простроченими обов’язковими документами показується як повністю придатний; | |||
* неможливо створити судно; | |||
* неможливо створити вакансію; | |||
* вакансія не має вимог до кандидата; | |||
* автоматичний підбір не враховує посаду; | |||
* автоматичний підбір не враховує дату доступності; | |||
* автоматичний підбір не враховує сертифікати; | |||
* пропозиція кандидату не змінює статус кандидата; | |||
* контракт не формується з даними кандидата, судна і вакансії; | |||
* завершення контракту не потрапляє в планування заміни; | |||
* зміни статусів не логуються; | |||
* звіти не відповідають фактичним вакансіям і кандидатам. | |||
<div style="border:3px solid #b71c1c; background:#ffebee; padding:14px; margin:16px 0;"> | |||
'''Умова складання.''' Завдання не може бути зараховане, якщо система не дозволяє пройти базовий цикл крюїнгу: моряк → документи → вакансія → підбір → пропозиція → контракт → контроль завершення → заміна. | |||
</div> | |||
== Очікуваний результат == | |||
У результаті виконання атестаційного завдання має бути створений модуль Crew Management System у K2 ERP. | |||
Модуль має підтримувати позиції моряків, судна, судновласників, базу кандидатів, документи, сертифікати, досвід роботи, вакансії, вимоги до кандидатів, автоматичний підбір, пропозиції працевлаштування, контракти, планування замін, нотифікації, звіти, експорт, AJAX-інтерактив і логування змін. | |||
== Примітка == | == Примітка == | ||
Модуль пошуку моряків | Модуль пошуку моряків є критично важливим для крюїнгових агентств, судноплавних компаній, операторів флоту та сервісних організацій, які працюють у сфері морських перевезень. | ||
Правильно реалізований модуль дозволяє швидше закривати вакансії, не втрачати кандидатів, контролювати документи, уникати прострочених сертифікатів і своєчасно планувати заміни екіпажу. | |||
== Коротко == | |||
{| class="wikitable" style="width:100%;" | |||
! Питання | |||
! Відповідь | |||
|- | |||
| Що потрібно створити? | |||
| Модуль пошуку, обліку і працевлаштування моряків | |||
|- | |||
| Які довідники потрібні? | |||
| Позиції моряків, судна, типи суден, судновласники | |||
|- | |||
| Який головний об’єкт? | |||
| Анкета моряка з документами, досвідом і доступністю | |||
|- | |||
| Що таке вакансія? | |||
| Відкрита позиція на судні з вимогами до кандидата | |||
|- | |||
| Що має робити автоматичний підбір? | |||
| Шукати моряків за посадою, досвідом, сертифікатами, англійською і датою доступності | |||
|- | |||
| Які документи потрібні? | |||
| Сертифікати, паспорти, медичні довідки, рекомендації, контракт | |||
|- | |||
| Які звіти потрібні? | |||
| База моряків, відкриті вакансії, підбір кандидатів, контракти і заміни, сертифікати | |||
|- | |||
| Що є критичною вимогою? | |||
| Повний цикл: кандидат → документи → вакансія → підбір → контракт → заміна | |||
|} | |||
== Див. також == | |||
* [[K2 Cloud ERP|K2 ERP]] | |||
* [[K2 ERP]] | |||
* [[Атестаційні завдання K2 ERP]] | |||
* [[Crew Management System]] | |||
* [[CRM]] | |||
* [[HRM]] | |||
* [[Контракти]] | |||
* [[Документообіг]] | |||
* [[Підбір персоналу]] | |||
* [[Вакансії]] | |||
* [[Нотифікації]] | |||
* [[Звітність]] | |||
[[Категорія:K2 ERP]] | |||
[[Категорія:Атестаційні завдання K2]] | |||
[[Категорія:Crew Management System]] | |||
[[Категорія:Пошук моряків]] | |||
[[Категорія:HRM]] | |||
[[Категорія:Крюїнг]] | |||
[[Категорія:Документообіг]] | |||
[[Категорія:Корпоративна Wiki]] | |||