Аппетитный IT: как мы автоматизировали 65 000 ресторанов
Привет, мы компания r_keeper. Вы точно бывали в ресторанах, которые используют нашу систему автоматизации — от KFC и Burger King до Ginza Project и Novikov Group. А всего мы внедрили ее в 65 000 заведений в 53 странах мира. Здесь мы будем писать о своем опыте продуктовой разработки и интересных кейсах. А пока хотим познакомиться и поделиться тем, как устроена работа инженеров в r_keeper. Рассказывают Тимур Нурутдинов и руководители отделов Сергей Устимов и Алан Ортабаев.
Про нас: 30 лет — полет нормальный
Мы занимаемся автоматизацией уже 30 лет — начинали, когда во всей Москве было несколько крупных ресторанов. Сейчас их тысячи, и для каждого у нас есть решение: мобильные кассы, которые работают прямо на планшетах официантов, — для небольших заведений, сложные кастомизированные системы — для крупных сетей вроде «Шоколадницы» или Subway.
Рестораны цифровизируются непрерывно, и r_keeper эволюционирует вместе с ними. Еще лет 15 назад мы не использовали средства командной разработки, запросто обходились без системы контроля версий, CI/CD и автосборки. Файлами обменивались по сети или прямо по почте, а рабочие версии продуктов уходили клиентам с машин разработчиков. Многое делали самостоятельно — например, кроссплатформенные фреймворки работы с графикой, сетью, многозадачностью.
Теперь все иначе: изменились приоритеты, требования к безопасности, усложнился продукт, появилось много сетевых заведений на 300 и даже больше точек, рестораны стали более требовательны к скорости изменений. Мы перешли на итеративную разработку, чтобы более точно планировать релизы, оценивать промежуточный результат и при необходимости корректировать процесс, быстрее поставлять клиентам новые решения.
Про архитектуру: касса плюс десятки модулей
Центр архитектуры r_keeper — касса, вокруг которой выстроена целая экосистема продуктов — они подключаются как модули.
Это собственные продукты r_keeper: системы бронирования и лояльности, приложения для мобильных официантов и доставки. Плюс мы поддерживаем несколько открытых API, которые позволяют партнерам проводить интеграции своих решений с кассой и нашим облаком.
Также касса «дружит» с разными девайсами от сторонних производителей — от фискальных регистраторов, сканеров штрихкодов и 3D-сканеров для распознавания блюд до промоэкранов и киосков самообслуживания.
Про приоритеты: облака и большие данные
Сейчас у нас несколько приоритетов разработки — то, что нужно рестораторам больше всего.
Клаудификация
Мы даем возможность ресторанам подключить кассу через облако и не тратить время и силы на развертывание собственного сервера. Так клиенты экономят на железе, а мы можем быстро предоставлять им актуальную версию ПО и легко адаптировать систему под конфигурацию заведений. Часть наших продуктов работает только из облака: система лояльности, система управления персоналом, решение для доставки и отдельный функционал системы бронирования. Все они пишутся на .NET, для базы данных используются PostgreSQL и Redis, для асинхронных операций и обмена данными — RabbitMQ и Kafka, для сбора метрик и логов — Grafana, Prometheus и ELK.
Чтобы рестораторам было удобно управлять подключенными модулями, мы сделали облачную «менеджерскую» — r_keeper Office, он работает в режиме одного окна и открывается из браузера.
Развитие доставки
Пандемия вывела доставку в топ, а тренд на dark kitchen полностью меняет рынок. Раньше бизнес-процессы были выстроены под то, что гость приходит в ресторан, ужинает и оплачивает счет, теперь же нужно готовить и доставлять блюда к порогу. Мы даем ресторанам полноценный многофункциональный инструмент для запуска собственной доставки.
Маркетплейсы
Пока работаем над полуавтоматизированным вариантом подключения к маркетплейсам, дальше перейдем к полностью автоматическому: у клиентов в личном кабинете просто появится кнопка «Подключить Delivery Club» или «Подключить Яндекс.Еду». Решение будет работать в облаке и полностью избавит сотрудников ресторана от необходимости понимать технические аспекты — больше никакой ручной настройки.
Репортинг и аналитика данных
Сейчас все больше ресторанов хотят понимать своих гостей, а мы даем им инструмент для аналитики данных и прогнозирования неких паттернов поведения прямо из облака.
Про стек технологий: r_keeper на радаре
30 лет на рынке — это не только огромный опыт и экспертиза, но и большой техдолг. Кассе r_keeper как продукту 29 лет, текущую версию мы начали писать больше 10 лет назад на Delphi / C Builder, а сейчас постепенно мигрируем на .NET и Kotlin. На ее архитектуру наложило заметный отпечаток то, что раньше кассовая система работала не только под Windows, но и под DOS, в котором использовались свои многозадачность, сетевой стек и собственная графика. У других продуктов тоже большой жизненный цикл: часть из них была выпущена в 2000-х годах и поддерживается до сих пор, в некоторых продолжаются доработки. Отдельные компоненты для разных клиентов мы пишем на новых языках.
В какой-то момент мы поняли, что надо структурировать наш стек, и составили технологический радар компании.
Посмотреть r_keeper TechRadar
Все технологии разделены на четыре сектора: Platform & Infrastructure, Data Management, Tools, Languages & Frameworks. Внутри сектора технологии разделены на слои: активно используем, в заморозке (техдолг / не используем в новых проектах), готовимся применять в production, исследуем.
Для нас выбор стека — это всегда баланс стоимости разработки новых и поддержки текущих решений, возможности быстрого найма специалистов и нашей оценки перспективности решения. Поэтому, например, мы используем .NET (c#), который давно популярен в России и получил «второе дыхание» с выходом .NET core, и Typescript — суперпопулярную и перспективную технологию для frontend-разработки.
Про разработчиков: 120 старичков и новичков
Над продуктами r_keeper сейчас работает около 120 разработчиков: в основном в двух центрах разработки в Москве и Воронеже, некоторые удаленно. Вместе с новым специалистами работают и те, кто в r_keeper уже 15—20 лет: из первых пяти нанятых разработчиков четверо все еще в команде.
В нашей истории много кейсов, когда ребята вместе с компанией и ее продуктами вырастали до team lead или до руководителей отделов. И в команду мы берем тех, кто готов учиться, ставить перед собой цели и выкладываться для их достижения. Стандартного обучения нет, но по запросу доступно многое — от тренингов и конференций до образовательных программ нашей головной компании Mail.ru Group.
Чаще всего люди приходят в r_keeper, потому что хотят поработать с современным технологическим стеком. Например, в одном из продуктов мы активно используем Flutter и Kotlin Multiplatform. В другом, где в качестве API для frontend личного кабинета применяется GraphQL, мы внедряем технологию GraphQL-federation, чтобы команды могли оставаться автономными и поставлять части API по своему продукту независимо от других разработчиков. А чтобы решить проблему монолита на стороне frontend, мы внедрили технологию WebPack Module Federation и фреймворк Vue.js — тут r_keeper в числе первопроходцев.
У нас нет строгих корпоративных правил, зато есть определенная свобода как в выборе решений, так и в направлении развития. Много интересных задач и понятные правила инженерной культуры. Но главное — ребятам нравится, что они могут оценить свой продукт «вживую»: достаточно просто сходить в ресторан или заказать доставку.
Кажется, самое главное о «внутренней кухне» r_keeper мы рассказали — пишите в комментариях, если остались какие-то вопросы. Обязательно ответим, а совсем скоро вернемся с новыми статьями в блоге. Планируем делиться опытом разработки, интересными кейсами, экспертизой наших инженеров. Уже в ближайшее время расскажем, как выбирали связку KMM + Flutter для одного из наших мобильных проектов (и что из этого вышло после рабочего внедрения).
- Блог компании r_keeper
- Программирование
- .NET
- Управление продуктом
Программа r_keeper: что собой представляет, настройка и особенности использования
В данной статье мы расскажем о том, что собой представляет программа r_keeper. Вы узнаете, как пользоваться программой, как войти в личный кабинет, а также интегрировать её с другим модулем.
ПО r_keeper — представляет собой систему, предназначенную для оптимизации работы в заведениях общепита. Применяются собственниками ресторанов, кафе, баров и фастфудов. По сути, ПО r_keeper представляет собой связующее звено между оборудованием, установленным в заведении, позволяет управлять как небольшим или средним заведением, так и крупной сетью ресторанов.
Время, когда официанты при получении заказа, фиксировали его в блокнот, уже давно ушло, теперь для этого есть планшеты. Больше не требуется кричать заказ, для его подтверждения достаточно пары касаний по экрану, расположенному на кухне.
Программа r_keeper: обслуживание посетителей в кафе и ресторанах
ПО r_keeper даёт пользователю все нужные для управления инструменты. Основной особенностью софта является полноценный цикл обслуживания клиентов, начиная от подачи меню и заканчивая получением оплаты.
Разработчик r_keeper предлагает следующие решения:
- Lite — мобильное облачное ПО, предназначенное для мелких заведений. Работа при этом ведется в общем интерфейсе.
- Cloud — представляет собой решение, предназначенное для заведений общественного питания среднего размера.
- One — это модульное решение, которое подходит для заведений любого формата.
Главные программные модули:
- Кассовая станция: r_k CashDesk. Представляет собой модуль, основным предназначением которого являются качественное обслуживание клиентов и индивидуальный подход для каждого. Обеспечивает возможность контроля деятельности персонала. Применяется для оптимизации основных бизнес-процессов в ресторане. Имеется возможность применения различных типов оплат, а также создания лояльной системы скидок.
- Доставка: r_k Delivery. Нужна для заведений, обслуживающих посетителей не только в зале, но и оказывающих услуги по доставке готовой еды и полуфабрикатов. Обеспечивает возможность оптимизации затрат, а также отслеживания деятельности на каждом этапе.
- Складской учет: r_k StoreHouse. Данный модуль предназначен для ведения закупа, отслеживания деятельности персонала и управления наценками. Позволяет в автоматическом режиме формировать накладные, осуществляет поддержку систем «Меркурий» и ЕГАИС в едином интерфейсе.
- Документооборот: r_k FoodFactory. Отвечает за работу в системе ЭДО. Документация может регистрироваться в месте ведения деятельности, к примеру, на складе. Доступ к ним открывается непосредственно после создания.
- Интерфейс менеджера: r_k Manager. Обеспечивает возможность быстрой настройки кассового оборудования, предназначенного для обслуживания клиентов, а также открывает сотрудникам доступ к конкретному функционалу.
- Лояльность: r_k Loyalty. Имеется возможность запуска акций, скидок, рекламных рассылок, а также изучения аналитических данных.
- Отчетность: r_k Report. Обеспечивает возможность анализа текущей деятельности по всем основным показателям, позволяя принимать важные решения. Предусмотрена поддержка неограниченного количества пользователей.
ПО функционирует на базе ОС Windows. Высокая производительность обеспечивается благодаря процессору Intel, а также наличию 256 Мб оперативной памяти. При этом обновление ПО и драйверов производится в автоматическом режиме. Пользовательская информация кодируется, поступает на SQL-сервер и хранится «в облаке».
Переносной терминал и другие доп. модули r_keeper
В соответствии с поставленными задачами, разработчиками предусмотрены следующие дополнительные программные модули:
- Агент доставки: r_k DeliveryAgent. Представляет собой мобильное приложение, предназначенное для оптимизации работы курьеров. Функционал предусматривает возможность получения заказов и прокладывания маршрутов. Контроль выполнения работы обеспечивается в онлайн режиме. Есть возможность выпуска чеков.
- Мобильный официант: r_k MobileWaiter. Данный модуль позволяет повысить качество и скорость обслуживания посетителей за счёт возможности автоматической передачи заказов на кухню.
- ТСД склада: r_keeper SH5 TSD. Облегчает процесс ведения складского учёта и формирования первичной документации.
- Киоск самообслуживания: r_k Kiosk.
ПО r_keeper можно инсталлировать на любое устройство: ПК, смартфон, планшет и т. д. Также предусмотрена возможность настройки под индивидуальные потребности заведения.
Программа r_keeper: как пользоваться
Все действия в программе производятся через ЛК. В первую очередь, администратор регистрирует кандидатов в сотрудники и разграничивает их права доступа. Во время авторизации, сотрудник вносит персональный код или проводит ключ-картой. Ниже мы разобрали функционал, доступный для разных сотрудников, в соответствии с занимаемой должностью.
- Добавление позиций из меню с обозначением очерёдности подачи.
- Пересылка полученного заказа на кухонный терминал – сотрудники кухни при этом видят название блюда, номер столика и имя официанта.
- Выпуск пречека.
- Отмена блюд, в случае отказа.
- Регистрация прихода сотрудника на рабочее место.
- Финансовые операции, выпуск чека.
- Закрытие смены.
- Создание списка продуктов на списание.
- Формирование заказа.
- Выпуск пречека.
- Отмена позиций.
- Закрытие счёта.
По факту функционал бармена объединяет в себе возможности кассира и официанта.
- Закрытие смены.
- Добавление и удаление позиций.
- Контроль прихода и ухода сотрудников.
- Формирование списка работников.
- Формирование отчётности.
- Удаление позиций из сформированного счёта.
Также администратор имеет возможность корректировки функционала менеджера, а менеджер имеет аналогичные полномочия в отношении официанта, кассира и бармена.
Личный кабинет r_keeper lite: вход
Для получения доступа к полному функционалу ПО r_keeper пользователю потребуется покупка лицензии. Пробная версия доступна только на протяжении 30 дней.
Разберем процедуру регистрации в системе на примере ПО r_keeper Lite:
- Откройте официальный сайт r_keeper, войдите в раздел продукты и выберите r_k Lite.
- Кликните на ссылку «Зарегистрироваться».
- Внесите учётные данные.
- На указанный номер телефона поступит тестовый звонок, в строку подтверждения внесите последние 4 цифры номера.
На e-mail поступит письмо с доступом. Через 30 дней тестовый период закончится, но собранные за это время данные будут сохранены. Для дальнейшей работы пользователю необходимо будет приобрести лицензию.
Интеграция r_keeper с другим программным обеспечением
В ПО r_keeper предусмотрена возможность взаимодействия с популярными товароучетными и кассовыми программами, а также государственными информационными системами:
- «1С:Предприятие», «1С:Бухгалтерия предприятия».
- «Меркурий.
- MixCart.
- ЕГАИС.
Установим и настроим программное обеспечение для автоматизации вашего магазина.
Оставьте заявку для получения квалифицированной консультации.
При подготовке материала использовались источники:
https://habr.com/ru/companies/r_k/articles/572298/
https://kkmsale.ru/blog/programma-r-keeper-chto-soboy-predstavlyaet-nastroyka-i-osobennosti-ispolzovaniya/