Как стать автором
Обновить
110.95
Леруа Мерлен
Мы строим технологическую компанию-платформу.
Сначала показывать

Как мы сделали форк российского Леруа Мерлен на Казахстан

Время на прочтение9 мин
Количество просмотров25K

Нужно было успеть адаптировать все ИТ-системы до конца строительства магазина.

В 2016 году было решено открыть магазин в Казахстане (в Алматы). В логике группы компаний Adeo (это все магазины Leroy Merlin по всему миру) на каждую новую страну нужно создавать отдельный бизнес-юнит со своей инфраструктурой и всем-всем-всем. Например, Украина — это отдельный юнит из пяти магазинов со всеми собственными подразделениями, службами и ИТ-процессами.

На Казахстан мы решили (впервые в истории развития компании) сделать форк российской инфраструктуры, фактически расширяя наши системы на новый регион. Почему? Потому что закупки, цепи поставок, юридические и финансовые службы централизованы. Рынки близки. Законодательство близкое, хотя и есть свои особенности (каждый департамент выявлял для себя отличия с помощью коллег из юротдела). Это евразийский Таможенный союз. У нас было 90 магазинов в России, и можно было закупать на условиях, которых в Казахстане поставщики просто не дадут, да и местного производства не так много. У нас много отлаженных процессов, работающее ПО и так далее.

Осталось только чуть-чуть докрутить пару ИТ-систем. Простая работа года на полтора, потому что переписать пришлось не всё, но очень-очень многое. Началось с того, что, оказывается, надо подписать дополнительные соглашения с 800 поставщиками, чтобы их товары правильно маркировались и сертифицировались при необходимости. Чтобы в Казахстане их можно было правильно учесть, соответственно и правильно напечатать ценник, на котором по закону наименование товара должно быть на казахском и русском языках.

На этом сюрпризы только начинались.
Читать дальше →
Всего голосов 81: ↑77 и ↓4+73
Комментарии54

Зачем нам в «Леруа Мерлен» нужен собственный российский отдел разработки на 200 человек

Время на прочтение8 мин
Количество просмотров28K
Привет! Я Валерий Лаптев, руководитель разработки LM в России. За два года мне нужно было поднять огромный отдел, и это был довольно интересный опыт.

Дело в том, что «Леруа Мерлен» есть во многих странах. Головная компания — во Франции, называется ADEO. Там пишут код под Францию, Италию, Испанию и Россию. Бизнес-модели у нас разные: если на российском рынке мы держим минимальные цены (ниже всех конкурентов в мониторинге), то в Европе всё иначе. На самом деле отличий море — начиная от особенностей локали и заканчивая другим законодательством. Есть особенности инфраструктуры России (те же очень большие задержки до Хабаровска) и другой жизненный цикл оформления заказа. Всё это порождает вот такой адский код, состоящий из огромных блоков IF:



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

Полугодовой цикл неспешной головной компании нам не подходил. Естественно, мы предложили написать свой код, отдать на ревью и подождать внедрения… Правда, из этого ничего хорошего не вышло.
Читать дальше →
Всего голосов 57: ↑52 и ↓5+47
Комментарии49

Как мы ускоряли время разгрузки товара на складе

Время на прочтение8 мин
Количество просмотров19K
image
Терминал сбора данных Zebra WT-40 со сканером-кольцом. Нужен для того, чтобы была возможность быстро сканировать товар, при этом укладывать физически короба на паллету (свободные руки).

На протяжении нескольких лет мы очень быстро открывали магазины и росли. Закончилось это тем, что сейчас наши склады принимают и отправляют порядка 20 тысяч паллет в день. Естественно, сегодня у нас уже больше складов: два больших в Москве — 100 и 140 тысяч квадратных метров, но есть и небольшие в других городах.

Каждая сэкономленная секунда в процессах приёмки, сборки или отправки товара в таких масштабах — это возможность сберечь время на операции. А ещё это огромная экономия.

Именно поэтому два главных множителя эффективности — это продуманный алгоритм действий (процесс) и настроенные ИТ-системы. Желательно «как часы», но «работающие чуть менее, чем идеально» тоже вполне подойдёт. Всё же мы в реальном мире.

История началась шесть лет назад, когда мы присмотрелись к тому, как именно поставщики разгружают фуры у нас на складе. Это было настолько нелогично, но привычно, что сотрудники даже не замечали неоптимальности процесса. Более того, в тот момент у нас не было промышленной системы управления складом, и в основном логистические операции мы доверяли 3PL-операторам, которые использовали свой софт и опыт в построении процессов.
Читать дальше →
Всего голосов 46: ↑46 и ↓0+46
Комментарии33

Как попадает товар в магазины «Леруа Мерлен» с точки зрения математики заказа

Время на прочтение9 мин
Количество просмотров31K
image
Ячейка пикинга на первом этаже стеллажа

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

Ночью каждый магазин считает прогноз по заказам на следующий период. Точнее, каждую неделю просчитывается прогноз на один год вперёд, а из него каждую ночь рассчитываются заказы для управляющего магазина. Скрипт видит, что кто-то купил смеситель, и если продажи пойдут такими темпами (тут целый блок сложной модели, что считать «такими темпами» и на каком периоде), то смесители закончатся через семь дней. Это значит, что нужно сформировать следующий заказ, чтобы их привезли.

Большая часть товаров едет в магазины либо по потоку кросс-докинга (склад перебрасывает паллеты, не открывая и не сохраняя их у себя на стоке), либо напрямую от местных поставщиков. Частично мы эти процессы уже разбирали в прошлом посте. Рассмотрим сложный случай, когда магазину смесители нужны из паллеты, которая лежит на складе в Москве.

Сложность в том, что паллета — это довольно много смесителей. А в магазин нужно привезти 50 штук, скажем. Не везти же её целиком? И вот появляется процесс пикинга, когда паллета снимается с ячейки, кладётся вниз, а потом из неё достаётся вложенная тара. Это может быть транспортный короб, иннер и штука. Штуками распределительный центр почти никогда не оперирует, за исключением редкого и дорогого оборудования. Для единиц нужны фулфилмент-центры, но это уже немного другая часть логистики, и в этом посте про них не будет.
Читать дальше →
Всего голосов 44: ↑43 и ↓1+42
Комментарии36

Корпоративные телефоны каждому из 31 тысячи сотрудников

Время на прочтение8 мин
Количество просмотров26K
У каждого сотрудника Леруа Мерлен есть корпоративный телефон. Там два слота под симки: один — под корпоративную с пакетом в 100 минут и трафиком для корпоративных приложений и 3 Гб на мобильный интернет-трафик, во второй можно втыкать личную. На телефонах — мессенджеры, соцсети, личные звонки и корпоративный EMM с двумя десятками корпоративных же приложений. То есть если надо сказать что-то сотруднику в магазине, то он получит сообщение в Ватсапе. Заболел ребёнок — тоже жена дозвонится в рабочее время.

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

Я с командой провела исследование на 1000 человек про то, можно ли перенести наши основные процессы в мобильность, тогда ещё было не ясно нужен нам терминал или телефон. И если да — какой он должен быть. Будут ли сотрудники использовать свой личный телефон или устройство должно быть предоставлено компанией? Какой личный аппарат сейчас у сотрудника? После этого мы смотрели на мировые практики. В итоге выбор пал в сторону телефона от компании, чтобы не поддерживать зоопарк устройств. Телефон — потому что устройство должно быть у каждого в руках и доступно в любой момент, что нельзя обеспечить с терминалом.
Читать дальше →
Всего голосов 39: ↑39 и ↓0+39
Комментарии43

Как в Леруа Мерлен можно купить товар со склада поставщика, которого нет в ассортименте магазина

Время на прочтение9 мин
Количество просмотров31K


У нас в Леруа есть много товаров, которые хотелось бы поставить на полки. Например, побольше видов обоев. Или профессиональное оборудование. У нас есть материалы для отделки спален, но нет кроватей и постельного белья. И так далее. 16 миллионов человек ежемесячно посещают сайт при населении России 146,8 миллиона человек. Поверьте, нашим покупателям хочется много чего, кроме 40 тысяч товаров основного ассортимента.

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

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

В случае успеха это такое резкое изменение бизнес-модели, что можно гордиться ещё года три. А внедрять всё пару месяцев. Как нам поначалу показалось.
Читать дальше →
Всего голосов 40: ↑39 и ↓1+38
Комментарии29

Необычные животные под водой

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров15K

Мне кажется, что каждый человек может иметь любое количество интересов. Тот факт, что мы все занимаемся ИТ, не только не исключает внутренних порывов расширять кругозор, а скорее наоборот — может стать поводом для этого. Для меня лично все началось с передачи про «таинственных обитателей глубин». Я посмотрел жутковатый ролик и подумал: «Интересно, а какие еще неожиданные для нас существа живут в разных уголках нашей планеты?» Начал копать и нашел много интересного. Одни картинки только чего стоят! Сегодня предлагаю посмотреть на тех, кто проводит свое время в толще воды и удивляет нас своими способностями и особенностями жизнедеятельности. 

Привет, Хабр! Меня зовут Олег Шилов, и на самом деле я фронтенд-разработчик команды «Леруа Мерлен». Но сегодня мне хотелось бы поделиться с вами своими находками в мире удивительных животных. Конечно, я не биолог, и этот пост будет скорее взглядом обывателя. Если у вас сегодня есть желание посмотреть на удивительных созданий (и жутких тварей), населяющих нашу планету, узнать, кто может покусать вас в ближайшем водоеме и почему «ангелы» не могут выжить без «чертей», добро пожаловать под кат.

Читать далее
Всего голосов 41: ↑39 и ↓2+37
Комментарии14

Устройство Helm и его подводные камни

Время на прочтение8 мин
Количество просмотров20K

Typhon freight hauler concept, Anton Swanepoel

Меня зовут Дмитрий Сугробов, я разработчик в «Леруа Мерлен». В статье расскажу, зачем нужен Helm, как он упрощает работу с Kubernetes, что поменялось в третьей версии и как с его помощью обновлять приложения в продакшене без простоя.

Это конспект по мотивам выступления на конференции @Kubernetes Conference by Mail.ru Cloud Solutions — если не хотите читать, смотрите видео.
Всего голосов 43: ↑40 и ↓3+37
Комментарии10

Некоторые особенности HR-политики в ИТ-ориентированной рознице

Время на прочтение6 мин
Количество просмотров10K
Привет! Меня зовут Катя, я занимаюсь автоматизацией HR-процессов «Леруа Мерлен» в России. Сразу скажу: сама я не пишу код, но участвую в каждом проекте. Хочу рассказать про некоторые особенности того, как это у нас устроено.

Самый частый вопрос ко мне от новых разработчиков: правда ли, что надо работать в магазине до того, как стать разработчиком «Леруа»? Правда, вне зависимости от того, с чем будет связана ваша работа. Типовое обучение любого сотрудника подразумевает интеграцию в магазине, то есть погружение в процессы розницы. Чем выше должность, тем больше времени на разных линейных должностях придётся проработать. Например, наш руководитель разработки четыре месяца провёл в двух магазинах, работая продавцом, участвуя в инвентаризациях и так далее.

Второй вопрос: правда ли, что мы выдаём телефоны всем сотрудникам? Правда. У нас есть корпоративные телефоны, которые выдаются всем без исключения сотрудникам магазинов и офиса.

Третий вопрос обычно — про соцпакет. Да, мы выкинули оттуда всё, кроме медстраховки и еды. Каждый сотрудник в зависимости от стажа работы получает очки, на которые можно «докупать» остальные нужные услуги по меню. Это значит, что можно взять дополнительный полис ДМС с отличным покрытием для родственника, либо получить компенсацию отпуска (билетов, путёвок, отелей), либо получить что-то ещё нужное именно вам.
Читать дальше →
Всего голосов 40: ↑36 и ↓4+32
Комментарии32

Как сэкономить на психотерапевте используя test-driven development

Время на прочтение27 мин
Количество просмотров19K
У вас когда-нибудь было такое состояние?

image

Хочу показать вам, как TDD может улучшить качество кода на конкретном примере.
Потому что всё то, что я встречал при изучении вопроса, было довольно-таки теоретическим.
Так получилось, что мне довелось написать два практически идентичных приложения: одно писалось в классическом стиле, так как я ещё не знал тогда TDD, в второе — как раз с использованием TDD.

Ниже я покажу, где были самые большие различия.

Лично мне это было важно, потому что каждый раз, когда кто-то находил баг в моём коде, я ловил увесистый минус на самооценку. Да, я понимал, что баги — это нормально, их пишут все, но ощущение неполноценности никуда не уходило. Также, в процессе эволюции сервиса, я иногда понимал, что сам понаписал такого, что чешутся руки всё выкинуть и переписать заново. И как это получилось — непонятно. Как-то всё было хорошо в начале, но вот пару фич и через некоторое время уже на архитектуру без слёз не взглянешь. Хотя вроде каждый шаг изменения был логичный. Ощущение того, что мне не нравится продукт собственного труда, плавно перетекало в ощущение, что программист из меня, простите, как из говна пуля.

Оказалось, я не один такой и схожие ощущения возникают у многих моих коллег. И тогда я решил, что либо научусь писать нормально, либо пора менять профессию. Я попробовал test-driven development в попытке что-то изменить в своём подходе к программированию.

Забегая вперёд, по результату нескольких проектов, могу сказать, что TDD даёт более чистую архитектуру, но при этом замедляет разработку. И подходит не всегда и не всем.
Читать дальше →
Всего голосов 32: ↑31 и ↓1+30
Комментарии27

Корпоративный телефон — как швейцарский нож: для инвентаризации, чата, обращений в поддержку и справок

Время на прочтение4 мин
Количество просмотров12K
Мы, команда разработчиков, делаем корпоративные сервисы Леруа Мерлен. И у нас есть одно преимущество, которым может похвастаться мало какой разработчик: у каждого сотрудника компании есть телефон, где всё это запускается.

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

Я хочу рассказать про эту экосистему приложений и то, что сотрудники делают с ними в магазине и в офисе. Вот так выглядит экран телефона:



Как видите, тут корпоративные приложения соседствуют с соцсетями, Телеграмом и прочим «бытовым» набором. Мы поощряем использование мессенджеров и соцсетей с корпоративных устройств. Принципиально не отслеживаем пользователей и не обращаемся к их данным (французская политика приватности в MDM примерно на уровне GDPR).

По нашим наблюдениям, когда у сотрудника появляются рабочий Телеграм и ВКонтакте на телефоне, он начинает эффективнее использовать приложения, которые нужны ему для работы.
Читать дальше →
Всего голосов 28: ↑28 и ↓0+28
Комментарии19

Как мы развивали ИТ в «Леруа Мерлен»: пересборка двигателя на ходу

Время на прочтение6 мин
Количество просмотров12K


Четыре года назад база клиентов велась отдельно в каждом магазине плюс ещё одна — на сайте.

В предыдущих сериях: три года назад мы решили, что нужно делать свою разработку в России. Два года назад начали писать собственный код вместо того, чтобы модифицировать форк кода материнской компании. Сегодняшняя история будет про то, как мы переключались с одного большого легаси-монолита на кучу маленьких микросервисов, соединённых своего рода шиной (оркестратор).

Самый простой юзеркейс: сделать заказ через сайт и забрать его в реальном магазине «Леруа Мерлен» в России. Раньше заказы интернет-магазина обрабатывались в другом приложении вообще и по другой схеме. Теперь нам нужна была омниканальная витрина, чтобы любой заказ был разбит на интерфейс: касса в магазине, мобильное приложение, терминал в магазине, сайт — что угодно. Если вы поставите Linux на микроволновку — пускай будет микроволновка. Главное, чтобы какие-то интерфейсы могли стучать по API к беку и говорить, что вот тут надо оформить такой-то заказ. И получали на это внятный ответ. Вторая история была с запросами наличия и свойств товара из его карточки.

На фронте (скоро и про это напишем) у нас монстр — AEM, а за ним в беке было два больших приложения: OPUS и MoVe. Первое — это база данных свойств каждого товара (от габаритов до описания), второе — отвечает за чекаут, то есть монолит касс. Если сильно упростить.
Читать дальше →
Всего голосов 27: ↑27 и ↓0+27
Комментарии20

Рекомендательный движок за 2 строчки кода

Время на прочтение5 мин
Количество просмотров5.1K

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

Алгоритм можно описать всего в одном предложении: берём историю продаж и обучаем на ней гугловый Word2Veс, фильтруем результат.

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

Читать далее
Всего голосов 23: ↑23 и ↓0+23
Комментарии7
Когда заходит речь о модных и передовых технологиях, ритейл, особенно строительный, — последнее место, где их станут искать. Ну что там может быть интересного: сайт на битриксе и мобильное приложение с программой лояльности? И в каких-то случаях этот стереотип не врёт, но «Леруа Мерлен» — совсем другая история. Наша IT-инфраструктура мощна, как лапищи мемного волка, а команда разработки столь же хороша.

Но технологии — это благо и боль в одном флаконе, прямо как супергеройские способности. В этом посте пять наших специалистов самого разного профиля — от фронтенд-разработчика до технического архитектора — расскажут, чем хороши их любимые инструменты, а в каких случаях надо не забывать страдать.
Читать далее
Всего голосов 30: ↑26 и ↓4+22
Комментарии43

Управляем технологиями в компании без тех. радара

Время на прочтение6 мин
Количество просмотров3.3K
В цикле развития любой быстрорастущей компании наступает момент, когда CIO, CTO, главный технический архитектор (нужное подчеркнуть) задумывается о том, что компания доросла до уровня осознанного управлении технологиями, и нужно начинать двигаться в эту сторону. Первое, что приходит в голову, — визуализировать технологии, с которыми каждый день работают сотрудники. Кажется, этого достаточно. Но решает ли это проблему управления технологиями? Давайте разбираться — и добро пожаловать под кат.


Читать дальше →
Всего голосов 19: ↑18 и ↓1+17
Комментарии3

Необычные животные на суше

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров4.5K

Всем привет! На связи снова Олег Шилов, фронтенд-разработчик команды Леруа Мерлен. И сегодня я вернулся с продолжением своего рассказа про необычных животных нашей планеты. (Первую часть можно прочитать здесь.) Повторюсь, я не биолог и не специалист по флоре и фауне, а просто увлеченный этой темой обыватель. И задача этого текста — просто поведать вам об удивительных тварях, с которыми мы можем столкнуться в самых разных уголках Земли. Что называется, предупрежден — значит вооружен. Так что всем заинтересовавшимся — приятного прочтения.

Читать далее
Всего голосов 23: ↑19 и ↓4+15
Комментарии11

Опыт интеграции веб-компонентов на сайт Леруа Мерлен

Время на прочтение13 мин
Количество просмотров17K

Однажды вечером, попивая кофеек, я получил сообщение от коллеги с емким словом «Дожили» и ссылкой на выступление на PiterJS. В этом выступлении спикер взял сайт «Леруа Мерлен» и показывал, как надо делать оптимизацию на неоптимизированном сайте. И он прав. Если взять PageSpeed Insights, то на главной странице мы имеем следующие значения:


Мобилка Десктоп

Можно ли «пробить дно»? Да! И это зависит от того, в каком «настроении» находится PageSpeed Insights или в каком положении сегодня звезды на небе.


Читать дальше →
Всего голосов 21: ↑18 и ↓3+15
Комментарии19

Как мы взвешивали товары или маленькая ода автоматизации

Время на прочтение3 мин
Количество просмотров11K
Купили невесомый саморез за 0 рублей и теперь думаете, куда прикрутить? Размышляете о теории заговора в лице пиар-службы магазина? Хорошо, если не понимаете, о чём идёт речь. Это значит, что до вас не добрался мем с весами, которым почему-то все родственники считают важным со мной поделиться.

Мем с весами в Леруа Мерлен
Начало и развитие истории, откуда я взял эту картинку.

История с весами мне напомнила случай, который случился на старте карьеры в Леруа три года назад. Я пришёл в эту компанию на позицию бэкенд-разработчика и сразу попал на трёхнедельную интеграцию: предстояло побывать почти на всех ролях в магазине. Через пару недель уже поработал с местным айтишником (привет, Коля!), ночью потаскал коробки на складе и разобрался в устройстве кухонной вытяжки. Как это было, это отдельное приключение, достойное собственного поста. Парой слов: для разработчика это необычный опыт, который даёт прочувствовать боли сотрудников и покупателей на собственной шкуре.
Читать дальше →
Всего голосов 21: ↑18 и ↓3+15
Комментарии18

Как сделать Kubernetes еще круче: секреты безупречной работы

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров7.4K

Отказоустойчивость информационных систем необходима для обеспечения непрерывности работы системы и минимизации возможности потери данных в случае сбоев или отказов в работе оборудования. Это особенно важно для критических для бизнеса систем. 

Мы начали использовать геораспределенные кластеры и повысили надежность сервисов. В статье опишем, какими инструментами это делали, какие сложности возникали и какие получили результаты. 

Привет, Хабр, меня зовут Артур Мечетин, и в этой статье мы со Станиславом Столбовым из Byndyusoft расскажем о том, как повысили стабильность приложений в К8s кластерах с высокой критичностью для бизнеса.

Читать далее
Всего голосов 15: ↑14 и ↓1+13
Комментарии8

О факапах с любовью

Время на прочтение5 мин
Количество просмотров2.4K

Привет!

Меня зовут Александр Поплёвко, я руководитель продукта онлайн-платежей в Леруа Мерлен.

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

Под катом небольшая история о том, как мы организовали «факап-митапы» (тоже не без факапов) внутри нашей компании, зачем это вообще нужно и при чём тут some title some text.

Читать далее
Всего голосов 13: ↑13 и ↓0+13
Комментарии7

Информация

Сайт
leroymerlin.ru
Дата регистрации
Дата основания
2004
Численность
свыше 10 000 человек
Местоположение
Россия
Представитель
Nastianastasia