Является решением по задаче #16 для хакатона "Лидеры цифровой трансформации - 2023"
Дополнительное описание работы сервиса смотрите по ссылке: Описание работы сервиса.txt
-
- Первоначальная регистрация с минимальным набором полей. Пользователь будет идентифицироваться в других сервисах по ID из базы данных этого сервиса.
- Авторизация/аутентификация по токену
-
- Зоны доступа: public, private, admin. Зона private включает роли: CANDIDATE, INTERN, CURATOR, MENTOR, HH (компания).
- Реальные пользователи (сущности) платформы:
- Студент - имеет несколько состояний: CANDIDATE, INVITEE, LEARNER, CONTESTANT, CHALLENGER, INTERN. Имеет уровень знаний: BEGINNER, INTERMEDIATE, ADVANCED. Имеет одного наставника и направление стажировки
- Наставник - имеет градацию уровня знаний: BEGINNER, INTERMEDIATE, ADVANCED, CERTIFICATED. Связан с одним студентом, имеет принадлежность к компании
- Куратор - имеет принадлежность к компании, в большинстве случаев обладает правами администратора
- Компания - создает стажировки, содержит направления, адрес, контакты, ФИ ответственного
- Стажировка - создается компанией. Содержит свойства:
- Заголовок
- Аннотация
- Описание
- Инициатор
- Направление
- Географические координаты
- Возрастной диапазон
- Лимит участников
- Кол-во подтвержденных откликов
- Дата создания
- Дата публикации после модерации
- Даты начала и окончания стажировки
- Длительность рабочего дня (FULL, HALF)
- Состояние: PENDING, PUBLISHED, CANCELED - устанавливают участники с правами ADMIN или HH
- Фидбек (не до конца реализовано) - содержит текст и оценку. Фидбек можно оставлять для Компании, Наставника, Студента. Эти участники имеют рейтинг.
- Общее -
При поиске Компании и в особенности поиске Стажировки реализован глубокий фильтр и сортировка по всем значимым полям
- Микро-сервисная архитектура
- SpringBoot, Spring Security
- JPA, HIBERNATE
- Postgresql, Redis
- Maven
- Docker-compose
- swagger-ui
- t-auth: host:8078/docs/swagger-ui.html
- t-core: host:8080/docs/swagger-ui.html
- api-docs
- t-auth: host:8078/docs
- t-core: host:8080/docs
- specification
- t-auth: talentium-t-auth-openapi.yaml
- t-auth: Посмотреть в PDF
- t-core: talentium-t-core-openapi.yaml
- t-core: Посмотреть в PDF
- Собрать проект командой: mvn clean package
- Запустить из каталога проекта под правами администратора:
- docker-compose build
- docker-compose up