.jpg)
В 2019 году мы создали виртуальную валюту Sibedge Coins, которую внутри компании называем «сибэджиками». Идея была тепло принята сотрудниками и со временем превратилась в полноценный пет-проект. Рассказываем, как прошли долгий путь от таблиц в Google Docs до полноценной веб-платформы со встроенным маркетплейсом и удобной системой транзакций.
Что такое Sibedge Coins
Сибэджики — внутренняя виртуальная валюта Sibedge, которую сотрудники накапливают на индивидуальных счетах в течение года. До 31 декабря накопления можно потратить на мерч компании, подписки на платные сервисы, подарочные сертификаты и другие товары, представленные в корпоративном маркетплейсе.
Можно объединиться с коллегами и приобрести в офис игровую консоль, украшения для рабочих мест или, например, массажное кресло. Кроме того, можно обменять Sibedge Coins на скидки в сторонних магазинах по текущему внутреннему курсу к рублю.
Если же материальные блага человека не интересуют, он может пожертвовать виртуальную валюту в один из фондов помощи тяжелобольным детям, пенсионерам или бездомным животным. За один только 2021 год сотрудники Sibedge пожертвовали благотворительным фондам более 40 000 рублей.
%203.jpg)
Как заработать Sibedge Coins
Получить Sibedge Coins можно несколькими способами:
- За проведение тренингов и воркшопов или участие в них.
- За изучение английского языка и прохождение курсов.
- За выступления на конференциях и написание технических статей.
- За каждую годовщину работы в компании и многое другое.
История разработки
В 2019 году Sibedge Coins начислялись сотрудникам в ручном режиме. Данные аккуратно записывались в таблицу, которая была доступна участникам программы по ссылке. В отдельном чате люди договаривались о совместных покупках и дарили сибэджики друг другу.
Это было крайне неудобно, у людей часто возникали вопросы и проблемы с переводами. В какой-то момент стало понятно, что пора автоматизировать систему и сделать её более удобной как для рядовых сотрудников, так и для администраторов, которые не справлялись с запросами.
Pre-Alpha-версия
В пре-альфа версии системы планировалось реализовать лишь базовые функции, включая автоматическое начисление Sibedge Coins на счета пользователей и осуществление транзакций: списание за покупку товаров, или перевод от одного пользователя к другому.
Работу над системой поручили бэкенд-разработчику. Он написал каркас системы на .NET 3.0, но её было невозможно масштабировать и улучшать, что автоматически делало проект нежизнеспособным. Приняли решение расширить команду дополнительными инженерами и полностью переписать код с учётом обновлённых требований.
%202.jpg)
Alpha-версия
Для альфа-версии мы написали гибкий API для осуществления начислений, переводов и покупок. Интегрировали в систему модули подтверждения транзакций и авторизации через Active Directory. Платформа автоматически генерировала отчёты о транзакциях и ошибках, что упростило процесс тестирования.
К проблемам можно было отнести отсутствие фронтенд-составляющей для взаимодействия пользователей и администраторов с системой. Кроме того, за время работы над проектом появились новые, более актуальные технологии, включая .NET 6.0, что вновь требовало переработки кода.
Beta-версия
К команде подключились ещё один бэкенд- и двое фронтенд-разработчиков. С их помощью возможности системы были значительно расширены. Появился актуальный список сотрудников компании, который обновляется в автоматическом режиме. Также был создан реестр операций внутри системы.
Администраторы могут:
- Начислять сибэджики, одобрять или отклонять транзакции.
- Добавлять в систему статьи начисления и списания.
- Создавать лимитированные сборы для совместных покупок.
- Создавать нелимитированные сборы на благотворительность.
Пользователи могут:
- Видеть количество сибэджиков на своих счетах.
- Видеть историю всех своих транзакций.
- Оформлять запросы на переводы другим пользователям.
- Приобретать товары во внутреннем маркетплейсе.
- Получать компенсации за покупки в сторонних магазинах с прикреплением чеков.
Система была в очередной раз переписана на .NET версии 6.0 и Entity Framework. Данные о транзакциях хранятся в PostgreSQL, а изображения товаров подгружаются из объектного хранилища MinIO. Авторизация и аутентификация реализованы с помощью Active Directory и корпоративной CRM Bitrix 24.
Если пользователь отчитывается о покупке в стороннем магазине и прикладывает чек для компенсации расходов, то документ должен проходить через финансово-экономический отдел. Поэтому мы написали интеграцию с системой 1С при помощи программного брокера RabbitMQ. Фронтенд был написан на Angular.

В двух словах работу системы изнутри можно описать так. С фронтенда приходит запрос в формате JSON. В нём есть обязательные и необязательные для заполнения поля, включающие тип транзакции, сумму перевода, ID отправителя, ID получателя и другие. Каждая транзакция, в зависимости от типа, осуществляется в ходе одной или двух операций. Например, у одного человека сумма списывается, а второму начисляется. Перевод завершается после одобрения транзакции администратором.
Release-версия
Релизная версия системы Sibedge Coins получила дружелюбный и понятный графический интерфейс, а фронтенд-составляющая была переписана с Angular на React. Платформа обзавелась новым разделом «Рейтинги», где можно увидеть, кто из коллег накопил больше всех сибэджиков.
Встроенный маркетплейс также был переработан с точки зрения удобства и улучшения визуальной составляющей. Появились детальные фотографии и подробные описания товаров, возможность выбора размера и цвета фирменной одежды. Был создан раздел для сбора средств на благотворительность с описанием организаций, которым можно пожертвовать деньги.
Подводя итоги
Платформа Sibedge Coins была запущена в прошлом году и успешно работает по сей день. Но мы не планируем останавливаться на достигнутом. Любую систему всегда можно улучшить. Поэтому мы усердно трудимся над отловом мелких багов и их исправлением, над улучшением существующих и добавлением новых функций.
Например, в маркетплейс мы добавим полноценную «Корзину» для покупки сразу нескольких товаров. Каталог товаров будет значительно расширен. Идей у нас море, так что сотрудников ждёт немало сюрпризов. Кстати, курс Sibedge Coins мы планируем связать с мировой экономикой, чтобы он соответствовал современным реалиям.