Задание: Проектирование. веб приложение, работает с api hh (Дистанционная работа)
Техническое задание: MVP сервиса анализа технологий в вакансиях "TechStats"
1. Общее описание проекта
1.1. Назначение системы
Сервис для сбора и анализа статистики востребованности технологий в IT-вакансиях с HH.ru.
1.2. Цели и задачи
• Основная цель: Определение процента вхождения конкретной технологии в требования вакансий
• Ключевые задачи:
o Сбор данных вакансий с HH.ru API
o Анализ содержания вакансий на наличие технологии
o Предоставление статистики в удобном виде
o Сохранение исторических данных для анализа
2. Функциональные требования
2.1. Модуль поиска и анализа
Интерфейс пользователя:
• Поле ввода/выбора названия вакансии
• Поле ввода/выбора технологии
• Переключатель "Точный поиск" (по точному соответствию фразы)
• Кнопка выполнения анализа
2.2. Модуль отображения статистики
Формат результатов:
• Процентное соотношение вхождения технологии
• Абсолютные числа (пример: "SQL встречается в 800 из 1000 вакансий")
• Список вакансий через раскрывающийся список
3.2. Процесс обработки данных
1. Получение запроса от пользователя
2. Поиск вакансий по HH API
3. Анализ новых вакансий на наличие технологий
4. Расчет статистики
5. Возврат результата пользователю
3.3. Ограничения API
• Соблюдение лимитов запросов к HH API
4. MVP Функциональность
4.1. Базовые возможности
• Поиск по вакансиям HH.ru
• Отображение процентного соотношения и абсолютных чисел
• Просмотр списка вакансий для каждой технологии
4.2. Логика запросов
• Точный и неточный поиск по названию вакансии
5. Интеграции
5.1. Единственная интеграция для MVP
• HH.ru API - получение данных о вакансиях
Техническое задание: Сервис анализа технологий в вакансиях "TechStats"
1. Общее описание проекта
1.1. Назначение системы
Сервис для сбора и анализа статистики востребованности технологий в IT-вакансиях с HH.ru с возможностью просмотра исторических данных и динамики изменений.
1.2. Цели и задачи
• Основная цель: Определение процента вхождения конкретных технологий в требования вакансий
• Ключевые задачи:
o Сбор данных вакансий с HH.ru
o Анализ содержания вакансий на наличие технологий
o Предоставление статистики в удобном виде
o Сохранение исторических данных для анализа
2. Функциональные требования
2.1. Модуль поиска и анализа
Интерфейс пользователя:
• Поле ввода/выбора названия вакансии с автодополнением из ранее проанализированных вакансий
• Поле ввода/выбора технологий с автодополнением из пула технологий
• Переключатель "Точный поиск" (использование кавычек для точного соответствия)
• Кнопка выполнения анализа
Валидация данных:
• Проверка на минимальную/максимальную длину запроса
• Ограничение количества одновременно анализируемых технологий (макс. 5-10)
Язык запросов технологий:
• Объединение (И) - технология1 + технология2
• Исключение (НЕ) - технология1 - технология2
• Выбор (ИЛИ) - технология1 | технология2
• Группировка - (технология1 | технология2) + технология3
2.2. Модуль отображения статистики
Формат результатов:
• Процентное соотношение вхождения технологии
• Абсолютные числа (например: "SQL встречается в 800 из 1000 вакансий")
• Список вакансий через раскрывающийся список
• Сравнение технологий по популярности в разрезе вакансии
2.3. Модуль исторических данных
Возможности:
• Историческое сравнение с прошлыми данными
• Выбор временного периода для анализа
• Отображение динамики изменения спроса на технологию
• Сравнение трендов разных технологий
3. Технические требования
3.2. Система кеширования
Многоуровневое кеширование:
1. Кеш анализа вакансий - результаты проверки технологии в вакансии
2. Кеш поисковых запросов - популярные комбинации "вакансия + технологии"
3. Кеш агрегированной статистики - готовые расчеты за периоды
Политика обновления:
• Частичное обновление: каждый час для новых вакансий
• Полное обновление: раз в сутки с перепроверкой существующих вакансий
• При изменении вакансии (по updated_at) - перерасчет кеша
3.3. Процесс обработки данных
1. Получение запроса от пользователя
2. Проверка кеша агрегированной статистики
3. Если кеш отсутствует/устарел:
- Поиск вакансий по HH API
- Сопоставление с кешированными вакансиями по external_id