Nepotism

Социальная платформа, которая помогает найти работу или сотрудников по принципу шести рукопожатий
Nepotism Nepotism

Разработка социальной сети для поиска сотрудников и работодателей

О клиенте

С нами связался клиент из Англии — бэкенд-разработчик из банковского сектора Джоно, который придумал соцсеть, помогающую работодателям найти сотрудников, а соискателям — работодателей.

Джоно начал работу над проектом Nepotism со стороны бэкенда, у него уже были демо-версия, user flow, структура базы данных и API. На их основе мы написали ТЗ, спроектировали интерфейс сайта и приступили к разработке фронтенда, а после и доработке бэкенда. Также взяли на себя задачи по DevOps для поддержки проекта.

Задачи
  • • Проанализировать рынок и сформулировать полный список требований к платформе
  • • Создать интуитивно понятный, удобный и привлекательный для пользователя интерфейс
  • • Обеспечить четкую систему поиска людей, соответствующую указанным критериям
  • • Разработать мессенджер для обмена сообщениями между пользователями

Дерево связей

Nepotism — это сервис, который помогает найти работу или сотрудников через цепочки знакомств на платформе.

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

Цепочка связей

Все пользователи системы формируют единую цепочку связей. Цвет связи зависит от типа: Working/Worked together with | Employed by | Employer of | Business partners with | Co-invests with | Educated with.

Чтобы добавить человека в цепочку связей, можно найти его на платформе через поиск по адресу электронной почты или пригласить в систему, если он еще не зарегистрирован. А он, в свою очередь, должен подтвердить приглашение для установления связи.

Уровни связей

По умолчанию (при первом посещении раздела, когда никакой фильтр не применен) отображается только первый уровень связей — все пользователи системы, непосредственно знакомые с пользователем Jono McLead.

Всего же уровней шесть — согласно теории шести рукопожатий.

Отличие от конкурентов

Ключевое отличие Nepotism от других социальных сетей в том, что в профиле каждого человека указаны его навыки, например разработка на Python, и уровень владения ими — от 0 до 10. Эту информацию можно внести в свой профиль самостоятельно или загрузить резюме — сервис парсит его и разбирает на навыки автоматически.

Основная функция платформы — поиск сотрудников

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

Алексей Коростелёв проджект-менеджер

«Чтобы реализовать сложное дерево связей, которое объединяет всех пользователей платформы, мы использовали нестандартный для нас стек технологий. В первую очередь речь про использование технологии GraphQL и связанных с ней компонентов (Neo4J). Ничего подобного мы не делали».

Разработали удобный внутренний мессенджер

Мы сделали для системы встроенный мессенджер — модальное окно обмена сообщениями с другими пользователями.

Мессенджер открывается по клику на изображение пользователя на графе. Список сообщений хранится в базе данных и обновляется каждый раз при открытии окна.

Можно отправить сообщение любому пользователю и он получит уведомление. История переписки сохраняется в базе данных.

Настроили чувствительный к условиям поиска фильтр

Фильтр позволяет увидеть на графе пользователей, максимально соответствующих требуемым критериям.

Он работает без перезагрузки страницы: при выборе любого значения или отмене выбора отправляется запрос к бэкенду и граф обновляется с учетом новых параметров фильтра.

Сейчас проект находится на стадии поддержки, вносятся доработки по пожеланию заказчика, но уже совсем скоро поиск сотрудников станет в разы проще.

Над проектом работали

Разработка
  • Арташес Овесян
  • Диана Иванова
Тестирование
  • Денис Слепцов
  • Татьяна Кудряшова
Дизайн
  • Оксана Буренкова
Проджект-менеджер
  • Алексей Коростелев

Технологии и инструменты

Фронтенд
  • Vue.JS (nuxt)
  • Vuetify
  • D3.js
Бэкенд
  • Node.js
  • GraphQL
Базы данных
  • Neo4j
Технологии
Следующий проект