Lamoda изнутри: зачем интернет-магазину 300 инженеров +84


Привет, Хабр! Меня зовут Валентин, я CTO в Lamoda, где работаю почти с момента основания компании. Все эти годы мы всей командой так быстро бежали вперед, что не было возможности немного остановиться и рассказать о себе. Думаю, время пришло.



Может показаться, что Lamoda – один из пионеров российского интернета, но нам всего семь лет. С момента основания в 2011 году по сегодняшний день наша компания выросла с 11 сотрудников до более чем пяти тысяч. Каждый месяц к нам на сайт заходит >10 млн человек. Фактически мы были стартапом-новичком в устоявшемся российском IT, а в итоге за такой короткий срок смогли догнать и превзойти многих заслуженных ребят.

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

В 2011 году мы самостоятельно развивали только подготовку контента и закупку стока для продажи, все остальное было на аутсорсе. Сейчас мы все делаем сами. Мы курируем эксплуатацию собственного пятиуровневого склада размером с футбольное поле, три контакт-центра и доставку покупателям. Несмотря на то, что в России очень высокая IT-культура, крупные компании только начинают погружаться в то, как выстроить подобную инфраструктуру, а в Lamoda по этому пути успешно идут уже много лет.

Итак, из чего состоит техническое закулисье Lamoda? По сути это пять больших подразделений:
 

  • департамент разработки (отдел автоматизации бизнес-процессов и отдел разработки онлайн-магазина)
  • отдел сопровождения IT (инфраструктура и безопасность)
  • отдел внедрения и поддержки ERP-системы
  • отдел поддержки сервисов
  • департамент данных и аналитики



Все в GO


Эта история о ребятах, которые разрабатывают e-commerce платформу, а в свободное от работы время гоняют на мотах и водят экскурсии по барам крафтового пива.
 
Именно в отделе разработки e-commerce платформы создают все то, чем покупатели Lamoda пользуются ежедневно: десктопную и мобильную версию сайта и приложения для iOS и Android. Сложность работы не в реализации функциональности для пользователя, команде нужно максимально быстро, но без потери качества и стабильности раскатывать новые фичи и поддерживать проекты в четырех странах: России, Казахстане, Украине и Белоруссии. На сегодняшний день сотрудники этого отдела в состоянии запускать по сервису каждую неделю, если это необходимо, и работают под девизом: «Все в GO».


Команды в основном разбиты по платформам (desktop, mobile site, mobile apps), также существуют четыре команды для backend сервисов. Каждая команда включает в себя фронт- и бэк-разработчиков, аналитиков, тестировщиков и менеджера продукта.

Чтобы доставлять изменения как можно чаще, мы практикуем такой подход к итерациям разработки: в начале спринта выдвигаем гипотезу, а выпуская новые фичи в production, проверяем ее, тем самым понимая, идет ли нововведение на пользу продукту и становится ли жизнь пользователей Lamoda лучше. Например, не так давно мы научились показывать, какое количество просматриваемого человеком товара было куплено за последнее время.  Для этого мы взяли продуктовую задачу, нашли в ней MVP и определили наиболее быструю стратегию реализации. Перед тем, как выкатить все в продакшн, мы определили, что критерием успешности будет увеличение конверсии. По результатам A/B-теста конверсия выше в той группе, где была внедрена фича.

Какое-то время назад в Lamoda начался массовый и стремительный переход на микросервисы. Что нам это дает? Первое — низкий порог вхождения для нового разработчика или специалиста из другой команды. Второе — легкая поддержка и изменение микросервисных систем, чтобы рабочий процесс был наполнен интересностями, а не только болью. Но небольшое количество монолитов (например система, которая отвечает за распределение заказов) у нас по-прежнему живет, и от них на данный момент трудно и неудобно избавляться.

Собираем Lamoda с нуля без SMS и регистрации


Всем известно, что не бывает работы без фейлов. Каждый раз, решая задачу и запуская код, мы надеемся, что вот оно, счастье, а потом нет – снова опыт. Говоря об опыте, стоит отметить тот факт, что сотрудники отдела разработки e-commerce платформы, как истинные бойцы, умеют в прямом смысле собирать Lamoda с нуля. Случалось такое, что из-за неверных сетевых настроек наш кластер решал, что он больше не кластер, и отказывался существовать. Повезло, что это было ночью, и за четыре часа нам удалось вдохнуть в Lamoda жизнь. Есть у нас и другие истории.



Тимур Нурутдинов, руководитель разработки e-commerce платформы:

Перед началом работы над новой функциональностью мы, как обычно, сели оценить, какие ресурсы нам нужны. В проект были вовлечены четыре команды. Мы учли приоритеты других задач, график отпусков коллег и трудозатраты. В итоге у нас получилось 32 недели.

Восемь месяцев на реализацию одной фичи. Это звучит дико. С помощью нехитрых изменений нам удалось сократить time to market до 4 недель, и вот что мы сделали.

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

Автоматизация склада и 15-минутные интервалы доставки


Ребятам из автоматизации некогда скучать, и задачки тут нетривиальные. Например, как залить на сайт миллионы товаров с одинаково высоким уровнем качества контента (автоматизация фотостудии), как обрабатывать и учитывать все заказы с сайта, принимая во внимание сотню маркетплейс-партнеров и четыре страны СНГ, как за три часа собрать заказ на пятиэтажном складе, как реализовать доставку клиенту на следующий день в выбранный им 15-минутный интервал в 600 городах только в России. А на десерт здесь подают продажу всего этого хозяйства B2B-партнерам и Marketplace-направление.
 
Работа ведется в основном на PHP, для автоматизации склада мы используем Java плюс Docker/Kubernetes, Atlassian stack, PostgreSQL, RabbitMQ.







У нас в отделе работает бакетная система для планирования спринтов: 60% – это проектный бакет, 20% – технический долг, приоритетным багам отдается 10% спринта, и 10% на то, что что-то обязательно прилетит извне. Кроме всего прочего, backlog grooming, online planning poker, stand-up, retro, code review 360, сбор и анализ базовых метрик, проведение мониторинга (Prometheus, Grafana, Icinga, Kibana), в общем все как в лучших домах Парижа командах разработки.

Вот пара забавных историй от Павла Савельева, руководителя отдела автоматизации бизнес-процессов.

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

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

Второй случай также произошел на складе. Эта история называется «43 веселые футболки». Не всегда сходу удается распознать сложность алгоритма, тем более когда решаешь задачу о рюкзаке и тебе нужно оптимальным образом разместить в определенном объеме N предметов (задача трехмерной упаковки). Оказалось, что если к нам на склад попадают 43 совершенно одинаковые футболки, система, отвечающая за упаковку товара, генерирует столько комбинаций распределения для данного кейса, что ей банально не хватает памяти. Мы пересмотрели алгоритм и нам больше не страшны одинаковые футболки — но что будет, если на упаковку попадут сотни пар носков, которые производители решат продавать по одному? Об этом стоит задуматься…

В любой непонятной ситуации ориентируйся на данные


Перемены, касающиеся аналитики в Lamoda, назрели уже давно, и в этом году мы затеяли объединение разрозненных подразделений аналитики со своей аналитической инфраструктурой и привычками в один большой департамент. Зачем? Основная причина в том, что сотрудники, находящиеся в разрозненных командах аналитики, часто делают одну и ту же работу, но по-разному, и затем не вполне ясно, на какие данные ориентироваться. Разные данные – это в целом нормально, потому что команды исходят из разных задач и предпосылок, но нужно тратить много времени на то, чтобы в них разобраться.

Сотрудники департамента – истинные евангелисты того, что все решения в компании должны приниматься на основе данных, поэтому каждый день здесь с энтузиазмом изучают бизнес-явления в данных, анализируют и извлекают ценность из данных, оценивая, как их можно применить. Основной инструмент это – SQL, а также Spark, Hadoop, Python для анализа данных, Excel, SAP BusinessObjects – для отчетности и Tableau – для визуализации.

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

Сергей Гилев, руководитель департамента данных и аналитики:

Перед департаментом аналитики на данный момент стоят две большие задачи: первая — это консолидация разнородного хозяйства, которое у нас было до объединения. Для дальнейшей эффективной работы нам необходимы единые метрики, аналитическая инфраструктура и процессы. Вторая цель — это проект по созданию аналитических дашбордов, описывающих «здоровье» определенного процесса или всей компании в целом. Таким образом мы стремимся значительно улучшить доступность данных для людей, принимающих решения, и привить всем наш подход к работе: в любой непонятной ситуации ориентируйся на данные.

История большого переезда: как мы запустили свой собственный склад незаметно для клиентов


Постепенный отказ от аутсорса привел нас к тому, что пора было вводить в эксплуатацию собственный склад. Кроме всей подготовки по автоматизации операционных процессов на новом складе, мы ставили перед собой цель не уменьшать ассортимент и ни в коем случае не останавливать продажу. Наши специалисты разработали решение, основанное на создании дополнительных «виртуальных» складов. Таким образом, на всем протяжении переезда у нас функционировали склады трех типов: старый, новый и «в пути». Так как перевозка товаров производилась постепенно группами фур, то сток, который оказывался в очередной партии, перемещался в «виртуальный» склад. У нас было расписание погрузок и разгрузок, поэтому мы точно знали, сколько времени сток будет находиться в пути и ориентировали клиентов на корректную дату доставки заказа.

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

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

Подготовка к Black Friday или как мы выживаем в период шопингомании


Несколько лет назад мы боялись «Черной пятницы» как страшного монстра. Мы понятия не имели, как отреагируют наши системы на такой поток заказов. Но постоянная работа над рефакторингом и развитием инфраструктуры стабилизировала наши системы и сделала их максимально предсказуемыми. Последняя «Черная пятница» была самым скучным днем в году. Специалисты ключевых систем и DevOps просто сидели за столом, играли в видеоигры или смотрели фильмы и только одним глазком следили за состоянием нашей инфраструктуры. Но подготовка к этому дню проходит несколько иначе.

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




War room — наш оперативный центр на Black Friday

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

Итоги


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

Кто-то скажет, что Lamoda – это абсолютный зоопарк технологий и систем. Мы сами часто шутим на эту тему и говорим: «Лучше спросите, что мы не используем». Но в этом вопросе существенным фактом выступает то, что у нас происходит постоянная эволюция стека и технологий, и при этом отсутствует их бездумный выбор. В этом нам помогает Architecture review каждого нового сервиса и проекта, ориентир на имеющуюся экспертизу сотрудников, а также ведение Technology Radar, детали и свои аргументы по которому мы с удовольствием расскажем в очередном посте. И также с удовольствием похоливарим на эту тему.

Вы можете помочь и перевести немного средств на развитие сайта



Комментарии (114):

  1. habradante
    /#19241027 / +1

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

    • zuse
      /#19241489

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

  2. denis-19
    /#19241067

    А Вы готовитесь к встрече с этой задачей?

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

    Введение обязательной маркировки для табачной продукции установлено с 1 марта 2019 года, парфюмерии – с 1 декабря 2019 года, шины и покрышки пневматические резиновые новые – с 1 декабря 2019 года, верхняя одежда и белье постельное, столовое, туалетное и кухонное – с 1 декабря 2019 года, фотокамеры – с 1 декабря 2019 года, обувь – с 1 июля 2019 года.

    • Zalina
      /#19241103 / +1

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

      • bjornd
        /#19241585 / +5

        Законодательство требует 4.5 кв.м. на одного сотрудника работающего за компьюетром. Соблюдаете?

        • Arkafon
          /#19242195

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

        • GraDea
          /#19244891

          Это вместе с туалетами, коридорами и кофепоинтами?

          • pbatanov
            /#19244919

            Для примера наша команда сидит в уголке на 8 посадочных мест. Размер оного на глаз где-то 6х8м. Сидим по периметру в центре уголка зона, в которой без проблем вся команда размещается на стендап

            • GeorgeIV
              /#19245135

              Я думал, что у нас плохо. У вас еще хуже )

        • TimsTims
          /#19245279

          Законодательство требует 4.5 кв.м. на одного сотрудника работающего
          Здесь же есть «лазейки» — учитывается вообще общая площать всех помещений, и делится на количество сотрудников. Поэтому просто посчитайте один только склад, и законодательно всё уже выполняется :)

  3. TimoshkinVlad
    /#19241245

    Круто. А как все же решили задачу заливки контента в миллион позиций на сайт? У нас объем был не так велик, но все равно мы делали «двойные» таблицы (с активной номенклатурой и номенклатурой для замены), заливали в «20» потоков (по числу ном. групп). А потом аккуратно все меняли, с учетом того, что у пользователей в текущей корзине \ заказах. Самое неприятное было с той номенклатурой, которая с одной стороны, выходит из ассортимента, а с другой висит в корзине…

    • mcsseifer
      /#19241477

      На сайт мы заливаем все в реальном времени в одни и те же таблицы. Мета информация по продукту и сток могут обновляться независимо друг от друга.

  4. Boomburum
    /#19241249 / +1

    С дебютным постом в блоге на Хабре! :)

  5. acmnu
    /#19241347

    Я надеюсь на фотках какой-то оперативный центр или обучение, а не рабочие места?

    • zuse
      /#19241579

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

      • Blablaman
        /#19245489

        Вопрос слегка неуместен, но через какое WiFi-оборудование предоставлен доступ в сеть в данном помещении, и сколько там человек максимум может работать?

    • Gedweb
      /#19241657

      Это штаб дежурства на Black Friday, рабочие места находятся в уютном опенспейсе.
      Есть фотки по завершению дежурства, более весёлые =)

      • pesh1983
        /#19241965 / +1

        С каких это пор опенспейс стал уютным?) Или это нужно трактовать как «все опенспейсы ужасны по определению, но у нас самый уютный из всех этих ужасных»?)

        • Gedweb
          /#19242093

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

          • pesh1983
            /#19242117

            Ну да, в опенспейсе такого нет) Там шарканье коллег вокруг, постоянные разговоры и мельканье фигур в боковом зрении заглушают эту неприятную музыку у соседа из наушников) Как замечательно, что есть опенспейс))

            • Krauzer
              /#19243063 / +1

              Самое классное быть в опенспейсе с сотрудниками из другого отдела.

              • tvr
                /#19243171 / +1

                Самое классное быть в опенспейсе с сотрудниками из другого отдела.


                Ога, с продажниками и техподдержкой.

          • gecube
            /#19244759

            Я думаю, что у любой команды (отдела) есть разумный лимит на размер.
            И нет никакой проблемы посадить команду (отдел) в отдельный кабинет.

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

      • mkshma
        /#19242197

        уютном опенспейсе

        Какой знатный оксюморон. Опенспейс не может быть уютным по определению.

        • Gedweb
          /#19242461

          Мне нравятся опенспейсы и это не было препятствием для работы ни в одной компании, извините, что мой взгляд на комфортное рабочее пространство отличается от вашего

  6. aPiks
    /#19241733

    На фотографии последней — это рабочие места? Бедные шеи/позвоночники ваших программистов. Да и места что-то не густо.

    • cheaffa
      /#19241753

      Это штаб дежурства на Black Friday. Добавили подпись к фотографии, чтобы не сбивала с толку.

    • Mahor
      /#19241807 / +1

      image
      Рабочие места вот такие.

      • pesh1983
        /#19241993

        Растения призваны отгородить работников от постоянно мелькающих мимо сотрудников? Мило)

      • postback
        /#19242189

        Почему бы я не пошел в такой офис работать:

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

        2. Нет звуковой изоляции.

        3. Опенспейс — рассадник болезней.

        • cmd01
          /#19244599

          Учитывая, что я только что специально посмотрел на офисы в Яндекс или Гугл и в плане рассадки людей большой разницы не нашел, скажите тогда, в какой бы Вы пошли????
          Просто многие постоянно, извините, но «ноют» о том, что опенспейс это плохо… В плане, когда рядом сидят бухгалтера и разработчики — это плохо, но, если отделы разделены, а в Ламоде явно разделены, то что Вы хотите? Это уже про «зажрались»? Может каждому разработчику по кабинету???

          • gecube
            /#19244779 / +2

            Выше написал про вентиляцию.

            Касательно того, что все так делают. Это дань моде и экономии средств работодателя.
            Ничего общего с комфортом опенспейсы не имеют. Понятно, что можно и в отдельных кабинетах устроить ад: запретить открывать окна, поставить советскую мебель. Или дать разработчикам «слабые» компьютеры.
            Но, в целом, в среднем, опенспейсы хуже отдельных кабинетов.

            • justboris
              /#19244955

              А покажите пример компаний, в которых рабочие места организованы как вам нравится?

              Я поработал в разных местах, от кабинета на четверых в совдеповском здании, до опенспейса на 30 человек, зато в приличном офисе в центре города. Второй вариант мне понравился больше. Вариант «кабинеты по 4 человека в приличном офисе в центре города» мне кажется невозможным экономически.

              • gecube
                /#19245033

                Вариант «кабинеты по 4 человека в приличном офисе в центре города» мне кажется невозможным экономически.

                А может эта… не нужны кабинеты в приличном офисе в центре города? Это какое-то продолжение политики гиперцентрализации (как, впрочем, все едут на ПМЖ в Москву со всей страны, т.к. только там нормально оплачиваемая работа). Даешь центры притяжения на периферии. Кстати, ездить не на ОТ в центр — это прям совсем боль.

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

                Ну, опять же — что сравнивать.

                Как несколько вариантов (не образцовых, но что-то взять можно):
                EPAM (1) nowystylgroup.ru/projects/epam
                EPAM (2) 42.tut.by/467196?crnd=58559
                S7 archi.ru/russia/image_large.html?id=135001
                DINO SYSTEMS www.officenext.ru/projects/project-30457-dins

                • postback
                  /#19245055

                  > А может эта… не нужны кабинеты в приличном офисе в центре города?

                  Это да, я сейчас работаю в пригороде. Как бонус пробок почти нет, потому что они почти всегда в обратном направлении.

                • justboris
                  /#19245139 / +1

                  А может эта… не нужны кабинеты в приличном офисе в центре города?

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


                  Как несколько вариантов (не образцовых, но что-то взять можно):

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

                  • gecube
                    /#19249847

                    Меня устроило бы использование любого кольца (лучше ОТ — МЦК, кольцевая метро, но можно и ТТК/МКАД) для того, чтобы добираться на работу. А скоро еще и МЦД построят.
                    Действительно наиболее противный фактор — чтобы не было больше 1-2-х пересадок или какой-нибудь адищенской служебной развозки в деревню с автобусом раз в день в каждый конец.

                • cmd01
                  /#19245547

                  Если Гугл и Яндекс откроют офисы в Балашихе, через некоторое время там будет все тоже самое… никто не будет из Химок ездить, будут снимать квартиры в Балашихе, в если офис в центре Москвы то большинству примерно одинаково добираться

                • gangstarcj
                  /#19247439

                  Суда по ссылкам вам больше нравится сидеть в коробке из-под холодильника чем в опенспейсе?

            • cyberly
              /#19245571

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

              В конце концов, в школе/универе все сидели в «опенспейсе» — и вполне эффективно занимались делом. Совсем не то, что домашние задания делать в гордом одиночестве: то поесть, то погулять, то в окно посмотреть, то ручку порасписывать…

              • gecube
                /#19247255

                В школе класс — максимум — 20-30 человек. К тому же, дети — это маленькие люди. У взрослых с одной стороны и потребности больше, да и перемен нет. Но и терпения/выносливости больше.

                В универе же — вообще огромные аудитории, с огромными объемами воздуха внутри. Поэтому несравнимо с опенспейсом.

              • striver
                /#19247449

                Практические занятия проходят в аудиториях до 40 человек, при этом студент что-то да должен делать, а вот аудитории на 100+ человек — для нижней чакры студента.

                • gecube
                  /#19249261

                  Абсолютно поддерживаю. Я уж не говорю, что во многих универах есть учеба в группах до 20-ти человек (лабораторные всякие, семинары, практикумы).

          • postback
            /#19245043 / +1

            В моей компании опенспейс это максимум 4 человека в помещении квадратов 15-20 пространства на человека. Планировано таким образом что проходные корридоры вне этих офисных помещений. Почти все столы стоят возле окна — искусственное освещение 90% времени вообще не требуется. Вентиляция хромает местами, но у меня есть окно, которое я открываю и закрываю как хочу, так что жить можно.

            > Просто многие постоянно, извините, но «ноют» о том, что опенспейс это плохо…

            Я работаю в довольно большой техкомпании (не IT), более 1000 инженеров, проводили психологическое тестирование (https://www.16personalities.com/personality-types) 80+% инженеров — интраверты. И это насколько мне известно типично.
            Вы и другие люди можете игнорировать этот факт, насаждать опенофис с лозунгом как хорошо для кооперации, погружать человека в среду из которой ему хочется поскорее свалить/взять лишний больничный чем сфокусироваться и выполнять работу.

            Я вот временами хожу на собеседования в другие компании, предлагали такую же постоянную позицию но зп +10% близка к потолку местного рынка (больше только у консультантов которые работают уже за почасовой рейт). Офис примерно такой как на фото тут. Я отказался.

            • cmd01
              /#19245567

              Ну я же писал что я не поддерживаю большие муравейники по сути… но кабинет для 4 человек экономически редко возможен…

              • cmd01
                /#19245575

                Я сейчас работаю в кабинете в числе 20 человек, жить можно.

          • ganqqwerty
            /#19245063

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

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

          • acmnu
            /#19245495

            Был две недели назад в Яндексе, на встрече. По крайне мере там где я был были кабинеты на 4-10 человек.

  7. Ad_xname
    /#19241841

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

    1. Микросервисы — это круто.
    Что это и зачем они нужны всем понятно. Расскажите про тестирование, развертывание, поддержку их инфраструктуры.
    2. Мы внедрили кучу технологий «как в лучших домах».
    Напишите, что они вам дали.

    Получился неплохой набор баек с упоминанием технологий.
    Ну и фотографии интересные)

    • Mahor
      /#19241951

      Про микросервисы в Lamoda подробно рассказал Андрей на BackendConf
      www.youtube.com/watch?v=hRcTvC6bznA&feature=youtu.be&list=PLl9pILEeZ62KwnhS2AEdbeovGR8Q_LBW1

      • Ad_xname
        /#19242693

        Я ожидаю от поста на Хабре чего-то полезного, а не «тут ничего нет, ищите где-то еще».
        И возможности задать вопросы и написать комментарии, а не просто посмотреть видео.
        Видео постараюсь посмотреть, по возможности )
        Это не упрек, просто поясняю, не обижайтесь.

      • rudinandrey
        /#19251797

        все здорово и понятно, спасибо за ссылку. Остался главный вопрос, почему отказались от MySQL в пользу PostgreSQL?

        • Mahor
          /#19251905

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

    • SLASH_CyberPunk
      /#19242015 / +2

      Мне кажется, не стоит в первой же статье ждать целый роман о всех аспектах развития компании…

    • cheaffa
      /#19242341

      Спасибо! Дальше будем писать более техническое, с деталями. А ваши вопросы лучше помогают понять, что именно «действительно интересно». О чем ещё хотелось бы узнать?

      • Ad_xname
        /#19242745

        По всем технологиям интересно, как именно преодолевали их недостатки, с какими проблемами столкнулись. Не нужно примеров кода и настроек ;), просто информация.
        Просто получилось все в кучу. Вроде и технических деталей добавили, по получилось ни о чем.

      • cmd01
        /#19244601

        очевидно(у всех же одинакого?), что Ламода столкнулась с дефицитом ресурса разработчиков. Расскажите от лица Product Ownera и от лица PM, как решали? Там есть у Вас упоминание про спринты, но хотелось бы больше информации.
        Какие есть продукты в Компании, как выстраивали и договаривались о приоритетности продуктов и проектов, в контексте нехватки системных аналитиков, например, или тестировщиков, такого плана вещи…

  8. amarao
    /#19241871 / +1

    Микросервисы позволяют делегировать ответственность за архитектурные решения с разработчиков (микро)сервисов на архитектора системы. Более того, во многом архитектурные проблемы делегируются из «compile time» (на самом деле design time) в runtime, когда кто-то должен идти и выяснять, каким образом процент дропа unknown unicast на одном из свитчей транслируется в понижение конверсии по программе лояльности.

    Каким образом переход на микросервисы должен был улучшить состояние «блуждающих сетевых факапов» я не совсем понимаю.

  9. LeshaVH
    /#19241879 / -1

    захочешь денег — и не так раскорячишься)))
    а вообще все работают — и собственно в чем что-то выдающееся?
    что являетесь прослойкой между производителем и покупателем?

    скорее бы производители напрямую начали продавать — для выгоды покупателей избегая вот таких прослоек)))
    да это им сложно — но зачем мне скидываться вашим учредителям на виллу в сен-тропе?

    • Zalina
      /#19241931

      Вы как-то наивно на мир смотрите. Не каждый производитель может обеспечить нормальную логистику, например. Особенно в такой большой стране, как Россия. Нам пришлось создавать свою службу LM Express. Задача производителей – производить, а не развозить. Та же история с доставкой еды – ресторан не курьерская служба, поэтому взорвались сервисы для этого.

    • mkshma
      /#19242257

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

    • Ad_xname
      /#19242869 / +4

      Не скидывайтесь. Езжайте на фабрику и покупайте там. )

  10. DenisokVrn
    /#19242451

    Работал с вами, как подрядчик для одного внутреннего андроид приложения для курьеров:) Было весело! Но интересно всегда, как внутри работают такие большие компании

  11. Calvrack
    /#19242549

    О! Члены АКИТ паблисити занялись. Пост — оно конечно интересно, но сущности общественной опасности компаний типа lamoda не меняет. Расскажите лучше — вы поддерживаете АКИТ и его цели по борьбе с трансграничной торговлей?

    • DisM
      /#19244817

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

      • gecube
        /#19244825

        Ну, а что мы хотели от кровавого капитализма? В самой его дикой форме?
        Во всех сферах жизни происходит укрупнение капитала и монополизация рынка (ну, край — три-четыре вендора остается) — это какой-то социальный закон. Ныть — бессмысленно. Нужно что-то делать (если что — к революциям не призываю и чту УК РФ).

        • DisM
          /#19247227 / +1

          Закидать Х@ями на Хабре — сойдет за «Нужно что-то делать»? :)

    • Ad_xname
      /#19245569

      С одной стороны, вроде бы IT отношения к АКИТ не имеет.
      С другой стороны, сравнение цен на товары за рубежом и в России показывает, что объяснить разницу только пошлинами, налогами и логистикой не получается.
      Либо компании получают сверхприбыли…
      Либо они неэффективны. А вот тут уже IT имеет самое прямое отношение.

      • cyberly
        /#19245637

        … сравнение цен на товары за рубежом и в России показывает ...

        Когда показывает, а когда и нет. Вот, товар на Амазоне стоит 24000, а в АКИТ — 25500. «Cверхприбыли» составили чуть больше 6%.

        • bjornd
          /#19245677

          Кавычки можно убрать:

          This is especially true for web-only retailers, which often see net margins as low as 0.5 to 3.5%.

          • cyberly
            /#19245863

            Ну, там 24000 — минимально возможная цена, плюс, для США может быть добавлен налог с продаж, а за доставку в Россию Амазон возьмет $143. Возвращаясь к комментарию выше, я думаю, что такую разницу все же можно объяснить «только пошлинами, налогами и логистикой».

            • Ad_xname
              /#19247405

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

              • cyberly
                /#19248881

                А сколько товаров я должен был взять?

                Просто вы говорите: "… сравнение цен на товары за рубежом и в России показывает, что объяснить разницу только пошлинами, налогами и логистикой не получается." Я это понимаю как «в России все дороже». Предложение про «компании получают сверхприбыли» наводит на мысль, что, по вашему мнению, не просто дороже, а сильно… прямо до неприличия (в разы, например). И вы еще упомянули АКИТ, что, видимо, обозначает, что АКИТ — главный виновник этого.

                Однако, по моему опыту, не все товары дороже, а некоторые, иногда, даже чуть дешевле. В местных магазинах цены, в общем случае, не зависят от того, АКИТ это, или нет. Я привел пример такого товара. Разница в цене на подобные товары лично для меня гораздо более критична, чем на всякую мелочь, типа кабелей или бамперов для телефона. Ну, потому что в абсолютных цифрах разница будет больше. И вот для подобных товаров я каких-то особых перекосов, как правило, не вижу.

                • Ad_xname
                  /#19250245

                  Например, такой класс товаров, как одежда важнее дорогих мониторов. Поскольку без монитора 4к uhd Вы обойтись можете, а вот без одежды и обуви — никак. С детскими товарами ситуация аналогичная.
                  Я вовсе не говорю, что в «России все дороже». АКИТ препятствует нормальной трансграничной торговле теми товарами, которые не представлены в России фирменными дистрибьюторскими центрами или не производятся в России, для получения сверхприбылей(либо такой прибыли нет, просто их схемы очень неэффективны).
                  И еще, если тут все гладко, зачем АКИТ так бьется за соответствующие законы?

                  • cyberly
                    /#19250561

                    Речь, видимо, идет о какой-то очень специальной одежде и очень специальных детских товарах? Потому что одежда и детские товары как класс, есть, их много и разных.

                    И еще, если тут все гладко, зачем АКИТ так бьется за соответствующие законы?

                    Ну, если оно лоббирует законы, которые ему выгодны, это выглядит логично. Наоборот разве бывает?

                    Мне непонятен другой момент: если эти законы пока еще не вступили в действие (речь же о снижении объема необлагаемых пошлинами покупок?), то почему эти товары, как вы говорите, в России дороже уже сейчас и были дороже до того, как о законах вообще зашла речь? За счет какого механизма АКИТ все это время заставляло компании, не являющиеся ее членами и не являющиеся официальными дистрибьюторами ломить цены? И почему сверхприбыли получает АКИТ, если продают эти товары не только они?

  12. Stecenko
    /#19242799

    Кстати, о прослойках. Часто между конечным покупателем и lamoda есть еще одна прослойка -ГСП (группа совместных покупок). Им нужны фото и описание товаров, которые они выкладывают в соцсетях. Соответственно, для этого они пользуются услугами разнообразных онлайн парсеров.
    Некоторые сайты отдают парсерам данные сами, чтобы не иметь лишней нагрузки и способствовать распространению своего товара через социальные сети.
    Некоторые просто не обращают внимания.
    Некоторые активно сопротивляются административными и техническими средствами.
    А как к таким вещам относится Ламода?

    • mcsseifer
      /#19243571

      Ламода вполне лоялно относится к такого рода интеграциям. У нас есть несколько десятков партнеров для которых мы готовим свои фиды.

  13. SanekPlus
    /#19242837 / +2

    Извините, а вы входите в АКИТ?

    p.s. Ничего такого, просто важная для меня информация…

  14. /#19243097 / +1

    -Мы самые клевые!
    -А почему?
    -А просто клевые и все!
    Хотелось бы более подробной информации о стеках, причины выбора того или иного, сервисах, какие проблеммы возникают.

    Опять же 300 инженеров, зачем так много? Раздут штат или действительно есть необходимость?

    • Beaglz
      /#19244315

      ЛМ — старый стартап с миллиардными инвестициями.
      Входят в группу компаний, старающихся превалировать на локальных рынках.
      300 инженеров для них не так много. Возможно, делятся своими наработками внутри группы.
      Такие компании про рентабельность стараются не вспоминать, главное — не останавливать свой рост в ожидании новых инвесторов.

      • gecube
        /#19244935

        Главное — не останавливать свой рост, а то конкуренты набегут (а раз растешь, то и конкурентов рано ил поздно купишь или разоришь).

        • Beaglz
          /#19245281

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

      • cadmi
        /#19247669

        там дооолгие (емнип, германские) деньги. с 2011 по примерно 2015 (если не изменяет склероз) были «планово-убыточными»

  15. capitannemo
    /#19243401

    Круто! Буду ждать технических подробностей

  16. divanus
    /#19243999

    Учитесь, как разводить лпров на ИТ бюджеты и повторяйте ;)
    100500 лайков.
    Но, в итоге кончат, как юлмарт.

    • Blablaman
      /#19245543

      Хорошо, если так. А то ведь и Wildberries купить могут, а там все, крышка.

  17. mSnus
    /#19244557

    Знаете, что круто? Что вы сумели влезть на рынок одежды/обуви, дико застойный со времён рынка «Лужники», и сделать всё современно и классно. Уважаю.

    • Beaglz
      /#19245259 / -1

      Уважаете за рекламные бюджеты, которым могут позавидовать 99% представителей рынка одежды/обуви?

  18. snikolaev
    /#19244617

    Спасибо за статью. А поиск на сайте на чём сделан?

    • Mahor
      /#19244753

      Сейчас основаня технология поиска — Solr и мы в процессе перехода на Elasticsearch.

      • LaFut
        /#19247205

        а зачем переходить? это же по сути одно и то же?

        • Mahor
          /#19248429

          Движок Apache Lucene действительно тот же, но мы думаем, что нам будет проще масштабировать Elasticsearch.

  19. Ваша компания входит в АКИТ. Шли бы вы отсюда лесом.

  20. gecube
    /#19244807

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

    Не создаёт ли это лишние барьеры и перекидывание ответственности за факапы? Как это ложится на концепцию DevOps/SRE?

    P.S. к нам на лекции приходил коллега от вас, из lamoda. Мосягин вроде? С его слов звучало, что прям у вас там круто

  21. dimoff66
    /#19245003

    Я понимаю, что рейтинг заметки +75 и видимо люди что-то в ней находят, но для меня все рассказано сродни камедиклабовскому "а я Никита, ворую носки из ашана". Информационно- познавательная ценность прочитанного почти нулевая.

  22. ganqqwerty
    /#19245035

    Вам 7 лет? Я думал, года два, только недавно столкнулся с агрессивной рекламой компании.

  23. zxweed
    /#19245287

    если у вас ЧП такая же, как везде, то неудивительно, что никакого роста нагрузки вы не получили

  24. sovulu
    /#19245497

    На первой фотографии реальный склад LaModa или это просто иллюстрация?

    • Mahor
      /#19245535

      Это реальный склад Lamoda — вот еще пара фотографий. Мы обязательно напишем отдельную статью про наш fulfilment center.

      image

      image

  25. gennayo
    /#19245889

    ERP и CRM системы у вас тоже самописные, или внедрен SAP, например?

    • Mahor
      /#19246531

      ERP: Основная Microsoft Dynamics и несколько 1C. Сами дорабатываем обе.
      CRM: все самописное и распределенное по нескольким системам.

  26. river-fall
    /#19245943

    Как-то примерно в 2015-2016 году Lamoda подписала меня на свои рассылки, от которых никак невозможно было отписаться. С тех пор она ассоциируется у меня исключительно со спамом.

  27. cadmi
    /#19247679

    Когда я в 2013 работал в topbrands, он почему-то считал себя конкурентом Ламоде :)))

  28. Maxyk
    /#19249723

    Как происходит послепродажная работа с клиентами? Много вопросов поступает после покупки? Как с ними работаете?