Поисковик кандидатов для HR (командный проект)

Материал из Wiki - Факультет компьютерных наук
Версия от 21:08, 29 августа 2016; Ivsavin (обсуждение | вклад)

(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск
Компания IPONWEB
Учебный семестр Осень 2016
Учебный курс 3-й курс
Максимальное количество студентов, выбравших проект: 3-5



Что это за проект?

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

Чему научатся студенты? Что самое интересное в проекте?

Пример разработки специализированного поисковика Пример информационной системы с типовым воркфлоу Большие возможности для эвристик ранжирования, классификаций, кластеризаций и тд, так как у объектов много разнородных фич Область не очень конкурентная особенно на российском рынке, можно найти пользователей сервиса

Организация работы (Как студенты будут работать в команде?)

Основные моменты взаимодействия:

- Непрерывня интеграция: линтеры кода, прогон тестов, покрытие тестами, сборка пакета и выкладка на прод, работа с конфигурациями. Настройка на примере Jenkins или Phabricator. Работа с конфигурациями через Puppet (или, возможно, Docker или Vagrant)
- Гибкая методология разработки: бэклог, организация спринтов, оценка сложности задач и сопоставление с фактически потраченным, демо. Технически на примере Trello, RedMine или Phabricator

В группе каждые 2 недели (спринт) переходит роль менеджера проекта, чтобы каждый мог попробовать роль пару раз и на планирование не забивали.

- Взаимные код-ревью: все ревьюят всех.
- Сразу рассчитывать в основном на удаленную работу, встречаться нечасто (например, в конце каждого спринта), но раз в 2-3 дня обязательно синхронизовать результаты и планы в слаке/телеграмме или по почте.

Компоненеты (Из каких частей состоит проект?)

- Краулер

- Выгрузка профилей
- Нормализация профилей
- Нормализация запроса
- Ранжирование результатов

Краулер, который обходит по некоторым условиям (чтобы не выкачивать сайт целиком) популярные профессиональные ресурсы: LinkedIn, Github, StackExchange, Habrahabr, Upwork. После этого происходит некоторый ETL: выкачиваются профили и унифицируется информация в них. К той же унифицированной форме приводится текст запроса HR - описания вакансии. После этого происходит выборка и ранжирование.

Какие будут использоваться технологии?

Язык разработки непринципиален, подойдет любой, в котором удобно работать с HTTP-запросами, взаимодействовать с СУБД и разрабатывать веб-сервер (например, Python, Ruby)

Какие начальные требования?

Базовое понимание HTTP, опыт работы с API. Опыт веб-разработки и написания краулеров

Темы вводных занятий

Взаимодействие в команде, методология Agile Архитектура разрабатываемого проекта Составление бэклога и планирование спринтов

Критерии оценки

Минимальные требования (на 4-5 баллов): Краулер и выгрузка профилей через апи для одной соц.сети (например, Github) Нормализация профилей с выделением основных навыков пользователя (языки программирования, фреймворки).

Точные требования на 6-10 будут сформулированы на первых занятиях исходя из составленного бэклога и уровня подготовки участников проекта.

Похожие проекты

http://amazinghiring.com - наиболее близкий https://www.successfactors.com http://recruiter.friendwork.ru

Контактная информация

Почта: acccko@gmail.com Телеграмм: acccko