Сайт вакансий программистов
Реализуйте сайт вакансий для программистов, на котором работодатели могут публиковать свои IT-вакансии.
Основные возможности проекта
- Просмотр списка IT-вакансий на главной странице с пагинацией
- Детальная страница каждой вакансии с полной информацией
- Фильтрация вакансий по языкам программирования, городу, зарплате и опыту
- Две роли пользователей: работодатель и соискатель
- Регистрация и авторизация пользователей
- Личный кабинет для работодателей (управление вакансиями)
- Личный кабинет для соискателей (отклики и избранное)
Главная страница
На главной странице сайта должен выводиться список из 10 вакансий с пагинацией. Каждая вакансия должна содержать следующую информацию:
- Название вакансии
- Требуемые языки программирования (PHP, JavaScript, Python, Java, C++ и т.д.)
- Зарплата (от и до)
- Город вакансии
- Уровень соискателя (Junior, Middle, Senior)
- Требуемый опыт работы (лет)
- Краткое описание вакансии
- Ссылка на страницу с полным текстом
- Дата публикации
Страница вакансии
На странице отдельной вакансии должна быть представлена полная информация:
- Заголовок вакансии
- Требуемые языки программирования (список)
- Зарплата (от и до)
- Город вакансии
- Уровень соискателя (Junior, Middle, Senior)
- Требуемый опыт работы (лет)
- Тип занятости (полная, частичная, удаленная)
- Фреймворки и технологии (Laravel, React, Spring и т.д.)
- Полный текст вакансии (обязанности, требования, условия)
- Контакты работодателя (телефон, email)
- Дата публикации
- Кнопка "Откликнуться" для соискателей
Фильтры
Необходимо разработать фильтр для поиска IT-вакансий по следующим критериям:
- Языки программирования (выбор из списка, можно выбрать несколько)
- Город (выбор из списка)
- Диапазон зарплаты (от и до)
- Требуемый опыт работы (от и до)
- Уровень соискателя (Junior, Middle, Senior)
- Тип занятости (полная, частичная, удаленная)
Фильтр должен работать в реальном времени и показывать только те вакансии, которые соответствуют всем выбранным критериям.
Регистрация
На сайте должна быть реализована система регистрации и авторизации с разделением по ролям:
- Регистрация работодателя (название компании, контактные данные)
- Регистрация соискателя (ФИО, email, телефон, ссылка на GitHub/портфолио)
- Авторизация по логину (email) и паролю
- Восстановление пароля через email
- Защита паролей (хэширование)
- Валидация всех полей на стороне сервера
Личный кабинет работодателя
После авторизации работодатель получает доступ к личному кабинету для управления IT-вакансиями:
- Просмотр всех своих активных вакансий с пагинацией
- Создание новых вакансий (заполнение всех полей, выбор языков и технологий)
- Редактирование существующих вакансий
- Удаление вакансий
- Просмотр откликов на свои вакансии с фильтром по уровню
- Изменение контактных данных компании
Личный кабинет соискателя
После авторизации соискатель получает доступ к личному кабинету для управления откликами и резюме:
- Просмотр всех своих откликов с пагинацией
- Отклик на вакансию (автоматическая отправка резюме)
- Избранное (сохранение понравившихся вакансий)
- Создание и редактирование резюме (указание языков программирования, опыта, проектов)
- Загрузка файла с резюме (PDF, DOCX)
- Статус откликов (отправлен, просмотрен, приглашение на собеседование, отклонен)
- Смена пароля и контактных данных
Дополнительные возможности
- Количество вакансий на главной странице можно менять через настройки
- Возможность добавлять новые языки программирования и города через админку
- Поиск вакансий по ключевым словам (название, технологии)