Как мы автоматизировали обжарку кофе и доставляем 100 тысяч заказов в месяц почти без ошибок

в 7:15, , рубрики: автоматизация, автоматизация предприятий, доставка, интернет-магазин, кофе, производство
Как мы автоматизировали обжарку кофе и доставляем 100 тысяч заказов в месяц почти без ошибок - 1

Привет! Мы — Tasty Coffee. Каждый месяц обжариваем, упаковываем и доставляем кофе тысячам покупателей и кафе по всей России. Формально кофейные зерна хранятся до двух лет, но в реальности они остаются свежими только один-два месяца после обжарки. Дальше с каждым днем во вкусе появляется больше неприятной горечи, а аромат кофе улетучивается. Поэтому мы стремимся, чтобы зерна приезжали быстро и максимально свежими, но при этом без путаницы в заказах.

В первые годы было попроще: заказов мало, поэтому один сотрудник быстро все упаковывал и отправлял, ошибок почти не было. Мы постепенно росли, и вместе с объемом заказов прибавилось работы и, соответственно, ошибок. Уже к 2018–2019 годам заказов стало так много, что люди почти каждый день жаловались, что им привезли не тот кофе или пачка не того объема.

Так мы пришли к утопической мечте избавиться от ошибок и в итоге сократили их до трех в месяц. Дальше расскажем, как мы это сделали.

Снижение с 0,7% до 0,0039% может казаться незначительным. Но если бы такой процент ошибок сохранился, каждый день пришлось разбираться с десятками перепутанных заказов и недовольных покупателей

Снижение с 0,7% до 0,0039% может казаться незначительным. Но если бы такой процент ошибок сохранился, каждый день пришлось разбираться с десятками перепутанных заказов и недовольных покупателей

Принимали пару заказов в день и не ошибались, но выросли, и всё сломалось

Интернет-магазин стал отдельным стартапом внутри компании. Офис был в обычной квартире в Ижевске. Сайт создали на бесплатном OpenCart и проработали на нем 5 лет, прежде чем написали свой с нуля. В первой команде было три человека: руководитель, менеджер и водитель. Всё делали сами: принимали заказы, собирали, возили на почту. Успевали всё и работали почти без ошибок, потому что принимали пару заказов в день.

Через пару лет объем продаж вырос: один сотрудник стал принимать и собирать больше тридцати заказов в день. Было радостно, но рост открыл сложности на следующих этапах:

  • Сборка. Тогда у нас было несколько сотен видов товара (SKU): кофе в зернах, пачки с мелким, средним и крупным помолом, упаковки по 250 г и 1 кг. При этом они выглядят почти одинаково — черные с белыми буквами, да и названия некоторых лотов очень похожи. Если не вчитываться, легко перепутать сорта кофе и отправить покупателю не то.

Слева — сорт Бразилия Серрадо, справа — Эфиопия Иргачефф. Чтобы отличить пачки, нужно вчитываться

Слева — сорт Бразилия Серрадо, справа — Эфиопия Иргачефф. Чтобы отличить пачки, нужно вчитываться
  • Упаковка. Чтобы стоимость доставки была оптимальной, мы старались подбирать коробки подходящего размера для заказов. Но это не всегда получалось. Например, в заказе большая кофемолка и одна пачка кофе. Сборщик берет большую коробку, заказ в ней болтается, кофе мнется, а аксессуар может разбиться.

Если взять неподходяшую коробку, пачки не помещаются, упаковка мнется и выглядит неопрятно

Если взять неподходяшую коробку, пачки не помещаются, упаковка мнется и выглядит неопрятно

Всё это сказывалось на качестве работы и себестоимости доставки. Кроме того, покупатели получали мятые заказы, оставались недовольны и жаловались. Поэтому мы проанализировали проблемы, которые у нас возникали, и сейчас расскажем, как их решали.

Проблема №1. Записывали заказы вручную

Сначала все заказы на доставку мы переносили вручную в Excel, сами составляли заявки для нашего производства и тратили на это кучу времени. Поэтому процесс автоматизировали первым — так у нас появилась выгрузка на производство в формате XLS по одному клику. Для сборщиков мы сделали таблицу, куда выгружались заказы и товары, которые в них входят.

Так выглядела наша первая табличка. Жирным выделяли товар, на который сборщику нужно обратить внимание. Например, молотый кофе, который заказывают реже, чем зерновой, пачки весом 1 кг и количество, если пачек больше одной

Так выглядела наша первая табличка. Жирным выделяли товар, на который сборщику нужно обратить внимание. Например, молотый кофе, который заказывают реже, чем зерновой, пачки весом 1 кг и количество, если пачек больше одной

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

Проблема №2. Доставляли заказы Почтой России и все вечера проводили в ее офисах

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

Найти в длинном чеке от Почты России крошечный трек-номер и переписать его без ошибок — сложная задача, которая отнимает много времени

Найти в длинном чеке от Почты России крошечный трек-номер и переписать его без ошибок — сложная задача, которая отнимает много времени

Чтобы избежать очередей, мы выбирали почтовое отделение, которое работает до 22:00 и приезжали за час до закрытия. Ужас на лицах сотрудников почты помним до сих пор 😅

А еще мы очень боялись отправлять заказы без предоплаты, наложенным платежом. Мы обжариваем кофе для каждого клиента и в случае возврата не сможем его потом перепродать: продукт перестанет быть свежим и вкусным. Если покупатель не забирал кофе, нам приходилось его выбрасывать, пить самим или раздавать друзьям.

Через несколько месяцев после начала работы мы нашли филиал курьерской компании Shop-Logistics в Ижевске. Еще через год узнали, что в нашем городе есть филиал СДЭКа. У них были адекватные цены и удобный личный кабинет, чтобы регистрировать посылки онлайн, поэтому мы решили с ними работать.

Первое время мы заносили заказы вручную, а потом начали выгружать напрямую из нашей системы. Скорость менеджера увеличилась в несколько раз: без автоматизации на обработку одного заказа уходило 3–4 минуты, а с ней всё стало почти моментально.

Автоматизация — это удобно, но есть и обратная сторона. Например, однажды утром нам позвонили из сервиса доставки PickPoint и сказали, что компания работает последние 2 часа и закрывается навсегда. А у нас заказы ехали на их склад в Москву, при этом следующую машину мы уже загружали. Пришлось останавливать погрузку, разворачивать фуру и целую неделю в огне согласовывать детали и перенаправлять заказы. Даже позвали на помощь коллег из соседних отделов, чтобы распределить ручную работу. Увы, часть заказов так и застряла у транспортной компании — пришлось отправить новые за свой счет. С ситуацией справились, но осадочек остался.

Проблема №3. Сборщики путали пачки и выбирали неподходящие коробки

Мы фиксируем все ошибки, даже небольшие, чтобы не пропустить системную проблему. Очевидные косяки исправляем сразу же, а если не понимаем причины — ждем, когда повторится. Все идеи обсуждаем и вносим в список на исправление — там всегда есть над чем работать. Мы успели найти и исправить много проблем благодаря собственной программе для сборки заказов. Вот с чем больше не сталкиваемся:

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

Когда сборщик сканирует код, система распознает это и автоматически вычеркивает пачку из заказа. Это помогает избежать ошибок при сборке:

  • Видно, если отсканировали не ту пачку.

  • Нельзя отсканировать одну пачку несколько раз, потому что уникальный QR-код генерируется на пачку, а не на сорт.

  • Не получится закрыть заказ, пока все пачки не отсканированы.

Так сборщики сканируют пачки в заказе

Так сборщики сканируют пачки в заказе
А вот как это выглядит на странице сборки заказа

А вот как это выглядит на странице сборки заказа

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

Сейчас система подсказывает подходящую коробку в 95% случаев. При этом, если сборщик не согласен с рекомендацией, он может взять другую коробку. В дальнейшем планируем подключить машинное обучение, которое сможет подсказывать верный размер даже для заказов, которых у нас еще не было.

Так рекомендация выглядит на странице сборки заказам

Так рекомендация выглядит на странице сборки заказам
Здесь сборщик взял правильную коробку, всё идеально помещается

Здесь сборщик взял правильную коробку, всё идеально помещается

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

Так выглядит предупреждение в личном кабинете сборщика

Так выглядит предупреждение в личном кабинете сборщика

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

У популярных товаров есть свой уникальный адрес на полке. Если товар заказывают редко — несколько раз в день, мы кладем его в микс-контейнеры. Товары, которые не входят в один контейнер, мы разбиваем на две категории:

  • На полку с определенным адресом. Ставим контейнеры с товарами на полки у станции сборки. Самый популярный товар в категории находится под адресом №1 и так далее по убыванию.

  • В кеш. Используем для временного хранения. Сборщики берут товар из кеша, когда он заканчивается на основной полке.

Получается, что товары, которые покупают чаще всего, находятся на уровне рук и поближе к станциям. Это экономит время и силы сборщиков, поэтому они успевают сделать больше.

Так выглядит рабочее место сборщика

Так выглядит рабочее место сборщика

Бывает, что производство выдает некоторые лоты позже, чем начинается смена в интернет-магазине. Тогда система сборки автоматически пропускает те заказы, товары для которых еще не готовы.

Беготня по цеху в поисках товара. Чтобы сотрудникам не приходилось бегать по всему цеху за пачками кофе, мы посчитали количество шагов от каждой станции сборки до каждой ячейки и написали специальный алгоритм. Система выдает заказы так, чтобы люди на каждой станции проходили минимальное количество шагов. Например, сборщик работает на станции у ячеек №1 и 2. Ему будут чаще попадать заказы с товарами из них или ближайших.

А чтобы сотрудникам было легче запомнить состав заказов, мы стали сортировать товары внутри них по номеру адресной ячейки. Раньше товары в заказе были в том порядке, в котором клиент клал их в корзину, — например, 6, 4, 3, 8, 1. Это сложно запомнить. Куда проще, если номера идут по возрастанию.

Еще мы добавили в программу фото товаров в упаковке. Так находить их получается гораздо быстрее

Еще мы добавили в программу фото товаров в упаковке. Так находить их получается гораздо быстрее

До того как мы ввели все эти правила, за смену каждый сотрудник собирал от 100 до 200 заказов. Сейчас объемы выросли до 400 заказов на каждого сборщика.

Опоздания с отправкой заказов в транспортные компании. Если заказ собран правильно, система отправляет на принтер ярлык транспортной компании. Он заранее сохраняется в кеше системы, поэтому печать занимает меньше секунды. Сборщик приклеивает ярлык на коробку, и заказ всегда уезжает по верному адресу.

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

Если клиент из Москвы, Казани или Питера, мы можем доставить заказ за 1–2 дня, потому что отправляем своими машинами. Время прибытия в город мы планируем на раннее утро, пока на дорогах свободно. В этом случае заказы можно успеть доставить клиенту в этот же день.

Проблема №4. Не все сотрудники могут быть одинаково мотивированы на работу

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

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

  • Определение среднего времени сборки каждого заказа. Мы стали анализировать данные: кто с какой скоростью собирает заказы, сколько успевает за смену. Теперь у нас есть таблица, в которой все сборщики видят результаты друг друга. Если кто-то собирает заказ существенно дольше среднего времени, система ненавязчиво напоминает: хорошо бы ускориться, чтобы успеть к дедлайну.

    Это главный экран сборщика в программе

    Это главный экран сборщика в программе
  • Защита от пропуска неудобных заказов. Мы добавили сборщикам возможность пропускать заказы, которые нельзя собрать прямо сейчас. Это нужно, чтобы станции не простаивали, если товара по какой-то причине не оказалось в цехе. Но возможностью можно злоупотреблять: например, когда лень собирать сложный заказ. Чтобы такого не происходило, система выделяет пропущенный заказ. Если кто-то из команды не будет браться за сложные или неудобные заказы, это заметят все.

    Так выглядит сообщение о пропуске заказа — видно, кто это делал и когда

    Так выглядит сообщение о пропуске заказа — видно, кто это делал и когда
  • Контроль количества пауз. Сборщик может поставить смену на паузу, чтобы отлучиться от станции на время. Но иногда паузами злоупотребляют, например, чтобы повысить свою скорость. Бывало, что сборщики открывали заказ, запоминали адреса ячеек, ставили паузу и бежали за кофе. А система засчитывала меньшее время сборки. Мы заметили это, но решили не запрещать паузы, а, наоборот, показывать всем, кто сколько взял.

    А вот общий рейтинг, где видно паузы. Например, здесь Владислав не взял ни одной, а Рустам — целых 22, потому что у него есть дополнительные обязанности

    А вот общий рейтинг, где видно паузы. Например, здесь Владислав не взял ни одной, а Рустам — целых 22, потому что у него есть дополнительные обязанности

Понимаем, что элементы соревнований могут нравиться не всем, поэтому у нас нет штрафов или премий за скорость сборки. Система просто помогает оценить свою производительность по сравнению с остальными. Это дает результаты. Например, после того как мы внедрили все новые правила, скорость увеличилась еще на 20%.

За 10 лет команда сборщиков выросла всего в 13 раз, а объем заказов — более чем в тысячу раз

За первый год работы мы отправили всего 734 заказа, а за 2023 год — 636 736, а в 2024 году — почти 1 млн заказов. Штат сборщиков при этом остался небольшим — сейчас у нас работает 13 человек, и они справляются почти без переработок.

Вот как это выглядит на графиках.

В 2014 году один сотрудник собирал 3 заказа в день, а в 2024-м — уже больше 300

В 2014 году один сотрудник собирал 3 заказа в день, а в 2024-м — уже больше 300
До 2022 года в штате не было и десяти сборщиков. Несмотря на объем заказов, команда остается небольшой

До 2022 года в штате не было и десяти сборщиков. Несмотря на объем заказов, команда остается небольшой
Благодаря автоматизации сборка одного заказа обходится нам примерно в 15 ₽ — в 8,5 раза меньше, чем 10 лет назад

Благодаря автоматизации сборка одного заказа обходится нам примерно в 15 ₽ — в 8,5 раза меньше, чем 10 лет назад

Сейчас мы отправляем около 100 000 заказов в месяц, и ошибки, конечно же, случаются, но всего 2–3 раза в месяц. Помог наш подход: анализировать процессы, находить недочеты и исправлять по возможности. Мы не наказываем сотрудников за ошибки, а, наоборот, стараемся сделать так, чтобы косяки не повторялись.

Все эти годы мы активно растем: не только по объему заказов, но и по количеству персонала в штате. А количество ошибок, наоборот, снижается — в 2024-м их было только 38

Все эти годы мы активно растем: не только по объему заказов, но и по количеству персонала в штате. А количество ошибок, наоборот, снижается — в 2024-м их было только 38

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

Не все идеи оказывались удачными. Например, как-то попробовали сборку по категориям, но она получилась не такой удобной, как система с шагами. В другой раз купили весы без дисплея и кнопки «Тара», а они задевали бортики и плохо работали. Или заменили поставщика чая, но из-за новых артикулов вся система сборки встала. Мы нормально относимся к таким провалам — это тоже опыт, без него нет роста.

Поэтому не планируем останавливаться на фишках, которые сейчас хорошо работают, а постоянно придумываем что-то новое. Например, вот пара свежих идей:

Мотивирующие сообщения. Ребята, которые работают быстрее других, получают вдохновляющие комментарии от системы. Например: «Ты собираешь заказы лучше, чем сын маминой подруги!», «У тебя что, 8 рук?!»,«А ты точно человек?» или «Псс… не хочешь поучаствовать в программе клонирования?». При этом мы понимаем, что кому-то такие сообщения могут не понравиться, поэтому их можно отключить.

Вот пример такого сообщения в программе. Когда сборщик ее открывает, он видит еще и россыпь конфетти

Вот пример такого сообщения в программе. Когда сборщик ее открывает, он видит еще и россыпь конфетти

Учет расходных материалов. Это коробки, шоколадки, стикеры и брю-гиды. Сейчас руководитель цеха сборки каждый день составляет заявку, чтобы заказать расходники. Мы написали систему, которая сама считает их остатки на складе, прогнозирует расход на следующий день и отправляет заявку, если нужно.

Нам важно, чтобы люди вокруг нас были довольны. Команда быстро собирала и отправляла заказы, а покупатели пили свежий и вкусный кофе. Будем рады, если наши идеи помогут кому-то еще. А если у вас есть советы, что улучшить в работе, расскажите — мы ценим все идеи ❤️

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

Автор: yanakuklina

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js