Комментарии 79
Для начала взяли open source решение на Java и после решили собрать собственную команду разработки, тем более, что уже есть подходящая основа.

Название open source решения можно как-то узнать?
К сожалению, эту информацию я из-под NDA вытащить не могу. Что могу сказать — это что у исходного решения двойное лицензирование и у нас коммерческая версия приобретена.

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

Open source для красивого словца добавили видимо. Казалось бы при чем тут свобода, если NDA и нельзя говорить про то что открыто миру

Ну мы скорее имели сказать что даже 7 лет назад на рынке было нечто опенсорсное, с чем можно было начинать. Сейчас наверняка выбор больше и лучше.
Я не силен в лицензиях и прочем подобном. Знаю лишь, что некоторые open source решения лежат на github под какой-то интересной лицензией. Ты можешь на базе этого проекта делать что угодно. Но потом ты обязуешься все свои решения и продукты тоже выложить в open source. Могу предположить, что отсюда и NDA
Не совсем. У нас под NDA всё, что может дать преимущество конкурентам. И когда мы не уверены, даст ли им преимущество знание конкретного решения — мы не берём на себя риски. А тут был опенсурс под двойной лицензией, как Qt. Если пользуешься бесплатной — обязан опенсорсить, если покупаешь платную — получаешь саппорт и опенсурсить не обязаны. Мы воспользовались второй опцией.
Рассматривали возможность голосового управления? Если да, то почему отказались?
И ещё, картинки интерфейсов терминалов можно где-нибудь посмотреть?
Насколько мне известно, такая возможность не рассматривалась. Когда мы говорим о голосовом управлении у меня сразу возникает два вопроса:
  1. Управление чем?
  2. Как?

При скучных операциях типа сканирования товара почти наверняка нажатие курка сканера быстрее чем команда голосом. При сложных операциях типа создания инвентаризации — клавиатура и мышка тоже быстрее.

А насчёт «Как» — надо учитывать что как-никак на складе достаточно шумно. Распознавание речи в наше время и так оставляет желать лучшего, а уж когда вокруг много таких же говорящих и всякой не очень тихой техники шансы на правильное распознавание снижаются ещё сильнее.

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

Голосовое управления хорошо работает там, где нужно чтобы руки были свободны, а не для скорости.
Ну мы не рассматривали, но это не значит что и не будем! Поделитесь success story?
Так тут делиться особо нечем. Мы взяли готовый движок для распознавания. На входе голосовые команды преобразуются в текст и в зависимости от текста транслируются в команды системы. Т.е. в системе для этого даже ничего менять не пришлось.
По сути, эта мулька просто переводит голос в текст и надо на эти текстовые сообщения замапить команды. И обратно, вместо выдачи формочек, система диктовала что нужно делать.
На вопрос «Как» вы ответили, но я всё ещё не совсем понимаю чем именно командовать. Ручным сканером?
Командовать терминалом. Сканер в такой схеме не нужен. Да и то, терминала тоже нет. Терминалом становится сам рабочий, ему выдаются команды через наушник и принимаются от него запросы через микрофон.
А, вы про навигацию в помещении говорите? Если да — то у нас просто так построены процессы что ориентироваться очень просто. Все справляются. А вот сканировать товары, контейнеры и т.д. надо почти во всех процессах.
Нет, я не про навигацию. Я как раз про отборы, приемку и пр. Вместо сканирования, так же, можно проговорить код с этикетки, это не проблема.
Вариант 1: пик
Вариант 2: четырэ шэст ноль три два адин четыре блин сбился четыре шесть ноль…

Сомнительно пока выглядит :)
Видел в работе на относительно большом складе, там сотрудник мог выбрать работать с терминалом или голосом, 70% таки выбирали терминал. Свободные руки позволяют работать быстрее, но вероятность ошибки выше, это да.
Когда руки заняты, вариантов, как бы, немного. :) Используется такая штука редко, но решение рабочее.
Какие устройства вы использовали для связи сотрудников? Если это гарнитуры, то как решали вопрос личной гигиены?
Вопросы личной гигиены решал клиент на месте. Это его работники и его склад. Поэтому по данному вопросу ничего не могу сказать.
А что за движок, если не секрет? Можно в личку. Интересно как раз попробовать при значительном уровне внешнего шума.
Движок от уровня внешнего шума не зависит. Для этого нужно хорошие гарнитуры.
Какие гарнитуры вы использовали? Мне казалось что движок в том числе должен обрабатывать входной сигнал с определенной долей искажений в т.ч. шумом.
Управление сотрудниками. Бегают с гарнитурой, система им говорит-возьми 3 штуки товара из ячейки номер такой-то. Но да, при здравом размышлении так как у вас индивидуальная маркировка каждой единицы товара, вам это не очень подходит.
Скрины хочу посмотреть, так как тоже занимаюсь WMS, не такого масштаба, конечно. И интересно, как что реализовано в других системах…
А если он отвлекся и прослушал откуда брать? Или пока брал отвлекся и подзабыл куда что класть? Когда эта инфа на мониторе перед глазами — гораздо удобнее, имхо.
Если не подтвердил в течении минуты, например — ему повторили, или сам попросил повторить.
Спасибо за интересную статью и отдельное спасибо за серверную стойку прямо на складе :)

У меня такой вопрос:
Для начала взяли open source решение на Java и после решили собрать собственную команду разработки, тем более, что уже есть подходящая основа.

Скажите, а вы вообще рассматривали подобные системы на 1С? Делали какой-то сравнительный анализ? Как вообще пришли к пониманию, что вам, по сути нужна уникальная разработка практически с нуля своим собственным штатом, нежели купить готовое решение, которое возможно уже потом доработать, если бы оно Вас не устроило где-то? Я не розжига ради, мне правда интересно. Судя по вторичным признакам (не более чем вакухи на хх), ваши коллеги-конкуренты автоматизируют свои склады на 1С (по крайне мере ищут людей, в требованиях к которым указаны соответствующие решения/подсистемы типовых).
1С хороша для небольших и средних складов, без роботов. И с отчетами и мониторингом при размере данных 2ТБ будет грустно.
Да нормально все будет на 1С. У нас пока без роботов, но в целом на 1С все работает.
1Тб, 30 складов, 500 сотрудников, сотни тысяч SKU.
Автозапчасти? Сколько строк заказов в день? Какое железо? До 100 тыс. строк заказов в день да, потянет. Уровень Ламоды и Озона — сомнительно, скорее всего будут проблемы на уровне платформы.
У нас больше SKU в один момент времени на складе и, вероятно (не знаю), выше скорость оборота этих SKU.
Как вы поняли из статьи сначала мы ка раз думали что можем работать с готовым решением. Жизнь показала что мы ошиблись. И хорошо что решение было написано на популярном языке — постепенно заточили под себя настолько, что от исходного решения по сути ничего не осталось кроме набора доменных классов (и то далеко не полного). Про 1С сказать не могу, но вот зато комментатор выше ответил, вполне вероятно что он разбирается лучше меня.
Я строил похожую систему на идентификации единицы учета, чтобы сразу предотвратить возможные хитрости пользователей с многократным сканированием, что исключило возможность «внутреннего DDos» Postgres'а. Для обработки действий пользователя использовал конечный автомат. Для каждой единицы учета определен базовый набор состояний с меткой времени перехода, месторасположением и кодом исполнителя. Среди состояний есть «перемещение» и «инвентаризация». По состоянию «перемещение» можно строить аналитику по внутренней логистике. По «инвентаризации» можно проводить инвентаризацию в произвольный момент времени. Вот только клиент — толстый. А сама система используется для учета сырья, материалов и готовой продукции на производстве и конечно не такая масштабная, как в вашем случае(у меня «колхозный» вариант из подручных материалов). Почитать Ваш статью было интересно. Не часто попадается интересная информация по этой теме.
Спасибо большое за ваш комментарий. Сейчас у нас система достаточно сильно похожа на вашу, однако даже частыми проверками состояния (например, каждые 10 мс) гипотетически систему можно уложить — происходят же и другие процессы, в том числе тяжёлые.Но да, стараемся как можно раньше запускать лёгкие проверки, чтобы быстро откидывать «паразитные» запросы.

Товароучётка в Lamoda — это отдельная система, с которой мы активно взаимодействуем.

В товароучётке есть много специфики — отчёты и всё такое, не хотелось бы нагружать WMS ещё сильнее.
У меня основная часть запросов клиента построена на легких проверках, поэтому даже при самом тяжелом запросе учетной системы — «Отчет цеха за смену», на клиенте это не сильно сказывается. Но у меня всего 20 клиентов, на большем количестве проверить не довелось.
Да, мы тоже идём к такой концепции. Одна из задач, которые я перед собой ставлю.
А какие самые тяжелые запросы на клиенте? При выполнении какой операции?
Самые тяжёлые редко выполняются. Самая жесть где-то на стыке тяжести, частоты и неправильного использования ORM.

asm0dey какой PG используете? Base или Code First? Секционирование самописное или не требуется?

9.4, Code first (привет ОРМ), но это ненадолго. Секционирование самописное, на наследовании. Но, надеюсь с переездом на новый постгрес возьмём встроенное.
Скажите, а вы не рассматривали кубическую складскую систему от Autostore? Имхо под ваши задачи самое оно. Экономия на площадях и персонале…
Если рассматривали — то в чем причина отказа?
К сожалению, я не знаю, рассматривали ли мы эту систему. У нас тоже есть адача трёхмерной упаковки, мы её для себя удовлетворительно решили. Нам относительно просто потому что
  1. У нас ограниченное количество формфакторов товаров
  2. У нас не все товары кубические — некоторые мягкие и круглые (условно пледы)
  3. Мы разделили всё хранение по типам
  4. Для остального мы написали эвристику трёхмерной упаковки

Это про экономию площади. А каким образом достигается экономия на персонале?
интересный проект и странно как туда не пролез SAP со своим EWM
Спасибо!
Когда ты стартап — тебе рано думать о САПе. Когда ты не стартап — тебе уже поздно о нём думать. Проекты полного успешного внедрения САП в России можно пересчитать по пальцам, к сожалению. А у нас система уже работает и работает, как нам кажется, хорошо.
Я как понял Ламода вообще заморачивается по поводу ИТ и своих разработок, а не покупает непонятные решения типо SAP, MS Ax, ultimate (не дай Господи).
У нас много своего/развитого чужого, но есть и полностью стороннее. Например как и многие в России мы используем 1С для бухгалтерии. И MS Ax тоже, кстати — он у нас в качестве товароучётки.
1с в России это стандарт. странно что реально SAP не влез к вам. И не пропихнул Hybris
Если бы решение зависело от меня — на ценнике Hybris'а я бы сказал «Спасибо, очень интересно, но мы пока не готовы».

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

Меня звали когда-то работать с ним. Я сказал примерно то же самое, что постом выше :)
Мне кажется, от сканирования кодов вручную персоналом (как девушка на фото с ручным сканером) можно и отказаться. Можно автоматизировать сканирование кода товара при перемещении с места на место (с полки на тележку, или на ленту транспортёра). Можно использовать RFID-метки.

Вообще, склад такое место, что его можно автоматизировать полностью: от приёмки товара до выгрузки упакованных товаров на выходе. Внутри — человеку делать нечего, ну кроме техников, смотрящих за роботизированными системами.
А сможете примерно прикинуть ценник на десятки миллионов RFID-меток и сотни пространственных RFID-сканеров? У меня немного не хватает знаний, хотя подход мне кажется очень интересным.

Как мы писали в статье — полная автоматизация сейчас кажется нерентабельной. Пока что люди обходятся немного дешевле. Однако я с радостью почитаю ваши предложения и пеедам их коллегам.
Мои рассуждения чисто теоретические, основанные на новостях об автоматизации в Amazon и проч. Но я уверен рано или поздно к этому придут все [выжившие в этой гонке]. Не нашёл в статье, что вы уже просчитывали полную автоматизацию.
Когда мы с вами говорим об Амазоне важно понимать, что у них есть один полностью автоматизированный склад и сотни обычных неавтоматизированных. У такого явления есть какие-то причины, которые мне пока что неизвестны.
В России тоже есть полностью автоматизированные склады, вполне себе рентабельно. Все зависит от оборота и того что хранится. А так, склады без людей под WMS, которая управляет всем, существуют.
Да, конечно. В фармацевтике это Очень выгодно потому что контейнеры маленькие и однотипные. Люди бы их роняли или теряли, а роботы точно работают. Вопрос в том, как это работает в fashion-сегменте.
Прекрасно работает. Лучше, чем в фармацевтике, где упаковка очень маленькая.
За лишние 0,1 секунды открытия «ворот» на сборке заказа в коробку улетит несколько лишних упаковок лекарства. Если умножить на количество позиций в заказе, количество заказов и стоимость пачки лекарств — лучше бы человек уронил ту дурацкую коробку.
ЗЫ: я не настоящий сварщик, фармацевтический конвеер только видел, не налаживал.
Прекрасный комментарий! Безусловно, бывают склады где цена ошибки очень высока и проблемы с возвратом существуют. В том числе к таким отраслям относится формацевтика. С одеждой тут всё немножко проще.
С возвратами точно проще. Особенно у вас. Ну положит робот две кофты вместо одной — на это ваш же курьер / сотрудник пункт выдачи обратит внимание. Да и клиент может сообщить.
А приедет в аптеку на 5% больше всех позиций — «какая пересортится? Нет никакой пересортицы, хорошо собрали»
Абсолютно верно! И вот с учётом отсутствия рисков тут нам выгоднее люди пока что.

Как насчёт Искусственного Интеллекта для автоматизации склада?

Мы всегда открыты к предложениям! Но вообще-то я надеюсь что наш вплне алгоритмический софт справляется не хуже :)
Спасибо! Очень интересная статья.

А приедет в аптеку на 5% больше всех позиций — «какая пересортится? Нет никакой пересортицы, хорошо собрали»

1. Тут не совсем согласен. Сотрудник в аптеке просто может не сообщить о том, что «излишки» пришли. И или: выявится это при следующей инвентаризации аптеки или при локальной/глобально инвентаризации склада.

2. Так же интересна идея проведения ежедневных инвентаризации. Сами сейчас прорабатываем увеличение их кол-во (как инцидентные так и плановые на основе оборачиваемости товаров). Но дело в том что эта операции сложная и можно напортачить ещё больше…


А я бы обсудил. Она, может, и нетривиальая, не непонятно что в инвентаризации сильно сложного

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

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

Согласен, что система должна думать/считать максимально за человека, но все-равно этот процесс пересчета упаковок ручного сотрудником и он вбивает цифры на ТСД. Могу показаться несведущим, в инвентаризации мало что изменилось когда мы перешли с бумаги перешли на цифру. Тут надо процессы отлаживать надо которые приводят к разночтениям.

Зачем он вбивает цифры? Он же трихкоды сканирует. Остальное само.

Если не индивидуальная упаковка каждая со своим ШК, а 1000 штук с одинаковым ШК, то каждую единицу не просканируешь.
Да, все верно. Сканирую например лекарственную упаковку мы получаем только её ШК, id товара, сверяя её с приказом по инвентаризации, а дальше уже «ручник»
Но возможно маркировка ЛС нам облегчит этот процесс, так как в коде Data Matrix зашит и id товара и серия и партия и срок годности.
Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

Информация

Дата основания
Местоположение
Россия
Сайт
tech.lamoda.ru
Численность
5 001–10 000 человек
Дата регистрации

Блог на Хабре