Корпоративные мессенджеры: как создать, внедрить и оптимизировать
В корпоративных мессенджерах сотрудники обмениваются данными, обсуждают задачи, оперативно взаимодействуют друг с другом по рабочим вопросам. Но что делать, если привычное для вас решение больше не доступно в стране, а потребность в его функционале осталась?
Первый вариант действий — подобрать альтернативу или обходные пути по использованию этого решения, но с негарантированным успехом.
Второй — разработать свой мессенджер, и раз и навсегда закрыть вопрос поиска удобного, надёжного и масштабируемого рабочего пространства.
Мы в NLABTEAM 20+ лет занимаемся разработкой программных продуктов, в том числе создаём корпоративные мессенджеры и приложения для крупного бизнеса.
В статье расскажем:
- каковы плюсы и минусы разработки кастомного мессенджера для командной работы;
- сколько времени займёт такой проект;
- что влияет на стоимость разработки, и на какие суммы рассчитывать в 2024 году;
- каким компаниям стоит и не стоит заказывать такую разработку и почему.
А ещё мы поделимся реальным кейсом создания мессенджера с высокими требованиями к безопасности и способности выдерживать колоссальные нагрузки.
Поехали!
Что не так с обычными мессенджерами
Для начала разберём, с какими сложностями и почему сталкивается компания, используя в работе обычный мессенджер вместо корпоративного.
Почти невозможно повлиять на защиту данных
Поскольку мессенджер не принадлежит вам, перестроить процесс обеспечения безопасности — более надёжно защитить данные сотрудников и клиентов теми методами, которые выберете вы — не получится. Ваши данные могут попасть к злоумышленникам и быть скомпрометированы.
Взять тот же Telegram: «угнать» аккаунт бизнесмена — теперь рядовая история для хакеров. И самое опасное, что в таком случае от вашего лица могут не только попросить денег в долг, но и запросить у ваших сотрудников внутренние документы, доступы и т. д.
Скажете, что ваши сотрудники никогда не попадутся на такие трюки?
Увы, даже самые подкованные в вопросах безопасности и внимательные из нас могут из-за усталости, многозадачности свою бдительность терять. Вот увлекательный материал по теме, опубликованный в 2023 году на NCBI (National Center for Biotechnology Information) и наглядно иллюстрирующий, почему этот тезис верен.
Не хватает порядка
В общедоступных сервисах нельзя выстроить нужную для команды структуру: например, создать ветки для обсуждения конкретных тем и взаимодействия ограниченного количества отделов.
А ведь это очень удобная функция, которая экономит время компаниям — и помогает сотрудникам сосредоточиться только на том, что относится к их работе и задачам. Темы сообщений, которые могут появиться в соответствующих ветках, понятны, легко приоритизировать срочность реагирования на сообщение.
Много информационного шума
В мессенджерах в одном пространстве объединены личные и групповые чаты, сообщества и каналы. Из-за этого сложно разграничить рабочее и личное, а также сосредоточиться только на работе. Вы сами создаёте для сотрудников соблазн отвлечься от работы, и наименее дисциплинированным это может помешать.
Зависимость от чужого сервиса
Преимущества создания собственного решения
Неограниченные возможности кастомизации. При разработке собственного мессенджера для работы вы сможете адаптировать его под нужды компании — добавить необходимые функции, реализовать уникальный дизайн, выстроить логику внутри приложения так, как будет удобно вам.
Можно найти функции, которые хорошо реализованы в готовых отечественных и зарубежных решениях, и лучшие в своём решении:
- Например, в Slack доступен расширенный поиск по каналам и чатам: можно добавлять ненужные каналы в чёрный список, искать только среди сообщений со ссылками или за определённый период.
- В DingTalk доступно подтверждение действий с помощью сканера распознавания лиц.
- В «Пачке» можно проводить звонки, приглашая в них до 100 участников одновременно.
- В eXpress есть возможность интеграции с CRM, СЭД, антивирусами.
- В Leverice можно запускать массовые рассылки.
- Discord позволяет создавать ботов — например, чтобы проводить регулярный health-check для сотрудников и уведомлять о новостях компании.
Безопасность данных. Если использовать любой из готовых общедоступных сервисов для обмена сообщениями, гарантии безопасности не даст ни один производитель. Все переписки сотрудников при определённых сценариях могут читать неизвестные люди.
С собственным приложением вы сможете хранить данные клиентов и сотрудников на своих серверах. Код принадлежит вам. Контроль всех мер обеспечения безопасности — в ваших руках. При этом определить, какие уязвимости могут быть, и как их исключить — задача вашего разработчика, будь то штатный специалист или компания-подрядчик.
Пример из нашей практики. У клиента из сферы телекоммуникаций (NDA) был запрос по обеспечению безопасности используемого корпоративного мессенджера и доступности передачи информации.
Канал связи использовался очень слабый, были сложности с выдерживаемой нагрузкой. Мессенджер не был качественно адаптирован под разные устройства. Нашей задачей было всё это исправить.
Мы разобрались в коде решения и собрали все жалобы пользователей. Зафиксировали и устранили баги, встречающиеся на разных устройствах в процессе работы. Переделали систему передачи файлов: модернизировали систему передач аудио, видео, любого другого контента в виде файлов, приложений.
До нашей модификации, при отправке, например, видеофайла, до момента его полной загрузки отправить что-либо ещё было нельзя. И чем слабее канал связи, тем больше времени такой процесс занимал. Получатель же сталкивался с тем, что этот видеофайл начинал загружаться автоматически и тоже блокировать возможности отправки сообщений до момента полной загрузки.
Мы сделали отдельный сервер обмена файлами вне основного канала связи. И модернизировали приложение так, чтобы оно использовало для отправки и получения файлов новый протокольный уровень. Новый протокол не блокировал основной канал связи и выполнял все требования, которые были должны.
Для обеспечения безопасности коммуникаций мы использовали надёжные механизмы шифрования и защиты данных, отталкиваясь от уязвимостей в изначальной инфраструктуре клиента.
Так выглядят некоторые экраны разработанного нами сервиса:
Контроль над коммуникацией. Вы можете создавать группы и чаты с различными правами доступа, всегда иметь возможность быстро связаться с любым сотрудником без длительного поиска его контакта. Также можно будет использовать изолированные каналы связи, когда они нужны. Приглашать клиентов, с которыми постоянно взаимодействуете, в своё пространство и облегчить взаимодействие проектной команды с такими клиентами.
Адаптивность. Вы сами выбираете, под какие устройства и операционные системы будет разработано решение. А разработчик — помогает выбрать такой технологический стек, который на 100% будет подходить под вашу идею и цели.
Интеграции с другими системами. Собственный программный продукт можно будет настроить для работы с другими сервисами, в том числе почтой, таск-менеджерами и системами аналитики.
Большие возможности для масштабирования. Если число сотрудников и клиентов будет расти, вы сможете добавить место для хранения информации или масштабировать структуру. Также можно будет постоянно расширять функционал, постепенно превращая простой мессенджер в полноценное корпоративное пространство.
Экономия ресурсов в долгосрочной перспективе. С одной стороны, разработка за раз отнимет больше денег, чем например, годовая подписка на публичный сервис. Но вы сможете потратиться на неё разово, при этом получить намного больше свободы, гибкости, пользы, чем с готовым шаблонным решением.
Недостатки, которые стоит учесть перед принятием решения о разработке
Дороговизна. На первый взгляд может показаться, что корпоративный мессенджер — это набор простейших функций. Но это не так, ведь нам как минимум нужно:
- разработать настраиваемые личные и групповые чаты и возможность хранения их истории;
- реализовать возможность передачи и получения специализированного контента, файлов, контактов;
- адаптировать систему под высокие нагрузки;
- настроить аудио- и видеозвонки;
- настроить превью файлов разных форматов;
- разработать возможность распознавания текста, написанного вручную на бумаге;
- настроить работу кнопок, корректное отображение информации по запросу, наборы эмодзи и пр.
И это только база, полный набор функций обычно шире — и все они выливаются в стоимость разработки от 20 млн рублей. Например, мессенджер с функционалом WhatsApp будет стоить от 30 млн руб., а такой, как Telegram — от 50 млн руб.
Обратная сторона адаптивности. Адаптации под устройства и разные операционные системы — это длительный процесс. Однако и здесь есть пространство для манёвра.
- Можно написать нативное решение, которое будет работать быстро и максимально качественно вне зависимости от сложности функционала и нагрузок — и это долгий, недешёвый путь.
- А можно выбрать кроссплатформу — с такими решениями мы теряем в качестве, но экономим до 50% бюджета и выпускаем продукт почти в 2 раза раньше.
Какой вариант окажется наилучшим для вас, зависит от требований к проекту.
Поддержка решения потребует дополнительных вложений. Это неизбежно при разработке любого кастомного решения: ведь в процессе использования реальными людьми обязательно добавятся пожелания, пользователи обозначат, что можно улучшить.
Чтобы сделать процесс поддержки комфортнее и выгоднее для клиентов, мы в NLABTEAM предоставляем гарантию на бесплатное внесение любых доработок в течение 6 месяцев после завершения проекта. Даже когда проект реализован, мы остаёмся на связи со своими клиентами и оперативно реагируем на запросы.
Работы, которые входят в процесс создания решения
Процесс разработки мы чаще всего выстраиваем по Agile: этот подход предполагает разработку фич по итерациям.
Каждую неделю наш клиент наблюдает, как его продукт обрастает новым функционалом и становится ближе к релизу. Для этого мы проводим видеоконференции, делимся отчётностью, демонстрируем промежуточные результаты.
Перечислим этапы, которые входят в разработку.
Определение целей и требований
Сначала нужно определить бизнес-задачи, которые компания будет решать с помощью программы. Например, это может быть ускорение процессов коммуникации и обмена файлами.
Отсюда станут видны и первые требования. Вот самые частые:
Функциональность, выбранная под вашу компанию. Это может быть возможность создания групповых чатов, обмен документами и большими файлами, видеоконференцсвязь и другие инструменты для быстрого выстраивания коммуникации.
Безопасность. Например, шифрование данных, контроль доступа, логирование всех событий, хранение всех диалогов даже после удаления истории переписки пользователем. Определить точнее поможет анализ уязвимостей, который может провести разработчик, задав базовые вопросы об инфраструктуре компании клиенту ещё на этапе погружения в проект.
Интеграция с другими приложениями. Например, с CRM-системами и программным обеспечением для документооборота.
Удобство. Сервис должен быть интуитивно понятным и лёгким в освоении для всех сотрудников компании — тогда вы сможете оперативно перевести их в новое пространство для рабочего общения. Удобство отражается в логике работы, продуманном интерфейсе, лаконичном дизайне без лишних элементов, отвлекающих от работы.
Разработка архитектуры
Это описание компонентов системы, учитывающий особенности их взаимодействия, заменяемость, масштабируемость, сопровождаемость, тестируемость каждого из них в отдельности.
Чем более продуманно и внимательно составлена архитектура, тем меньше неожиданностей вас ждёт при разработке решения.
В NLABTEAM работают архитекторы решений с опытом более 15 лет в IT. Мы с удовольствием берём в работу сложные задачи и помогаем клиентам заранее понимать, как может развиваться их программное решение, какие взаимосвязи будут существовать между его компонентами, какие из этих компонентов и чем можно заменить. Помогаем выбрать архитектурный подход исходя из задач проекта. Работаем как с монолитной, так и микросервисной архитектурой и хорошо понимаем их преимущества и недостатки.
Дизайн
Создание дизайна идёт параллельно разработке архитектуры. Вот основные критерии хорошего дизайна:
- Простота и доступность. Пользователю должно быть понятно, где и что искать, даже с минимальным онбордингом.
- Цель и иерархия. У каждого элемента интерфейса есть своя цель: не может быть кнопок ради кнопок. Оформление разделов должно быть логичным — таким, чтобы было понятно, в каком из них стоит искать конкретный функционал, информацию.
- Визуальное не ради красоты. Цвета, шрифты и иконки должны быть не просто элементами оформления, а помогать пользователю ориентироваться в приложении. А ещё это возможность повысить лояльность — создать приложение в цветах вашего бренда, с использованием её логотипа, тематических эмодзи.
- Консистентность. Все элементы интерфейса должны быть согласованы между собой, созданы в едином стиле и соответствовать брендбуку компании.
Разработка функциональности
Включает в себя реализацию функций, выбранных вами на этапе планирования проекта и создания ТЗ, написание серверной и клиентской части (backend и frontend).
Базовые функции корпоративного мессенджера — это:
Регистрация новых пользователей и вход в систему. Для этого нужно разработать формы аутентификации — для проверки личности пользователя и авторизации — для проверки уровня доступа к ресурсам организации. Также стоит реализовать возможность двухфакторной авторизации — это позволит повысить безопасность системы.
Отправка сообщений. Разрабатывая эту функцию, важно учесть, чтобы пользователь мог искать адресата по имени, выбирать из списка контактов и всех пользователей системы, отправлять текстовые сообщения и прикреплять к ним документы в разных форматах и размерах. Всё должно работать быстро и плавно, не заставляя сотрудников терять время на разбор технических неполадок.
Просмотр истории сообщений и поиск по словам. Важно, чтобы сервис позволял хранить не только сообщения, но и их метаданные: например, о дате, времени отправки, собеседнике.
В идеале нужно внедрить поиск по слову, чтобы сотрудник всегда мог найти сообщения в диалоге со своими коллегами по конкретной теме. Это помогает поднять подробности в случае спорных и конфликтных ситуаций.
Пример. Ведущий дизайнер Маша поставила своему сотруднику Диме задачу по разработке уникального оформления шаблонов презентаций. Приоритет задачи — низкий, Маша поставила её со значительным запасом по времени, чтобы точно всё успеть.
Спустя два месяца, когда в компании начался сезон продаж, и шаблоны для сборки презентаций оказались очень актуальны для менеджеров, Маша запросила их у Димы. Но Дима сказал, что такой задачи не получал.
Чтобы поднять переписку 2-месячной давности, Маша ввела в поиске по диалогу с Димой слово «презентация», и оперативно нашла подтверждение того, что задача была.
Ситуация показала Диме, что стоит быть внимательнее к просьбам коллег, а Маше — что стоит тщательнее контролировать выполнение задач подчинёнными. А ещё благодаря этой ситуации руководящий состав компании увидел, что пришло время выбрать систему учёта и отслеживания задач.
Управление контактами. С этой функцией пользователи смогут добавлять, искать и удалять контакты среди сотрудников организации.
Тестирование
После разработки функционала и интерфейса приложения необходимо протестировать его на наличие ошибок.
Основные составляющие для тестирования — проверка корректности работы функционала, способности системы выдерживать высокие нагрузки, эффективности мер по обеспечению безопасности.
Развёртывание
После успешного тестирования приложение развёртывают в инфраструктуре компании: в том числе разграничивают права пользователей, задают индивидуальные настройки, пишут гайдлайны по работе с продуктом.
Обучение пользователей
В этот этап входит не только онбординг в систему, но и повышение технической грамотности по вопросам безопасности.
Внешние меры обеспечения безопасности не будут эффективны, если пользователи не следуют базовым правилам. Бывает, сотрудники придумывают слишком простые пароли, хранят их в открытом доступе, переходят с рабочих компьютеров по сомнительным ссылкам. Обучая пользователей, можно дополнительно защитить данные компании от утечки.
Как интегрировать корпоративный мессенджер в ваши процессы: первые шаги
Создайте основные группы для связи
Когда сотрудники начнут пользоваться новым решением, важно, чтобы уже была создана необходимая структура групп и каналов. Например:
- канал General, в котором будет публиковаться самая важная информация для всех;
- канал или группы для каждого департамента;
- FAQ-каналы, где новые сотрудники могут найти ответы на организационные вопросы;
- другие тематические каналы.
Интегрируйте со сторонними сервисами
Настройте интеграции с CRM, почтовыми серверами, корпоративной Wiki и другими сервисами.
Проконтролируйте процесс регистрации и онбординга сотрудников
Важно, чтобы все сотрудники компании пользовались продуктом, иначе его работа будет неэффективной. Также важно вести все коммуникации только в системе— тогда те, кто просто ленится в нём регистрироваться, все равно присоединится.
Подытожим
- Корпоративные мессенджеры помогают сделать взаимодействие внутри компании простым, рабочие процессы — более контролируемыми, а хранение данных — безопасным.
- Для того чтобы создать такой продукт, нужно определить цели и требования, разработать архитектуру, дизайн и функциональность, протестировать, развернуть решение в инфраструктуре.
- Выстроить процесс разработки можно по Agile, это поможет обеспечить еженедельные релизы, постоянно наблюдая, как система обрастает новым функционалом на ваших глазах.
- Для эффективной работы необходимо обучить сотрудников работе с сервисом и мотивировать их пользоваться только этим каналом связи.
- Понимание и применение мер безопасности — важнейший шаг на пути к полной защите данных не только внешними, но и внутренними методами.