Files
second-mind-aep/💼 Работа/Собеседования/Лето 2025/Задачи/💼 Прикладная задача для Middle разработчика.md
2025-08-13 14:53:57 +04:00

2.0 KiB
Raw Blame History

📝 Задача: Система управления событиями

Условие:

Вы разрабатываете систему для управления событиями (конференции, вебинары, встречи). Нужно реализовать сервис регистрации участников с учетом следующих требований:

  1. Событие имеет:

    • ID, название, описание
    • Дату начала и окончания
    • Максимальное количество участников
    • Статус (DRAFT, PUBLISHED, CANCELLED)
  2. Участник имеет:

    • ID, имя, email
    • Дату регистрации
  3. Бизнес-правила:

    • Регистрация возможна только на опубликованные события
    • Нельзя зарегистрироваться на событие, которое уже началось
    • Нельзя превысить лимит участников
    • Один участник может зарегистрироваться на событие только один раз
    • При отмене события нужно уведомить всех участников

Техническое задание:

Опишите подход к решению задачи:

  1. Архитектуру приложения - какие слои нужны
  2. Entity классы - основные поля и связи
  3. Ключевые методы EventRegistrationService
  4. Обработку бизнес-правил - где и как валидировать
  5. REST API endpoints - какие нужны
  6. Обработку ошибок - типы исключений
  7. Транзакции - где нужны и почему
  8. Тестирование - что важно покрыть тестами

Время на выполнение: 25 минут