OZON.ru
10 536

Зачем Ozon более 200 новых Go-разработчиков

Онлайн-ритейлер с 20-летней историей набирает экспертов для трансформации в технологическую компанию.

В закладки

Ozon работает на рынке онлайн-ритейла 20 лет и весьма преуспел в клиентском сервисе и создании физической инфраструктуры для быстрой доставки — 40% заказов доставляются в течение суток. Но всё это время компания не ставила на первое место технологии: ИТ-отдел по размеру был сравним с колл-центром и в основном занимался поддержкой сайта.

В 2018 году акционеры — в том числе МТС и фонд Baring Vostok — инвестировали в Ozon несколько миллиардов рублей, чтобы силами новой команды топ-менеджеров сделать из старейшего российского онлайн-ритейлера технологическую компанию с перспективой выхода на зарубежные рынки. Ozon развивает 23 новых проекта, которые не могут быть успешными без сильной технологической базы.

Компания создала «лабораторию инноваций», где работают более 400 человек, и массово нанимает разработчиков, которые займутся реализацией планов.

От монолита к микросервисам

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

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

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

Для разработки микросервисной архитектуры и решений на её основе, Ozon нужны новые специалисты.

Над какими направлениями нужно будет работать

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

Магазин в магазине. Это направление продолжает предыдущее. Продавцы смогут открывать свои магазины на платформе Ozon и использовать логистическую систему компании.

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

Кроме того, Ozon работает над сервисами для доставки готовой еды, торговли фармацевтическими и скоропортящимися товарами, а также товарами повседневного спроса.

Всего компания готовит к запуску 23 проекта. Из-за этого увеличится нагрузка на склады, логистику, менеджмент и, как следствие, на ИТ-отдел.

В книге «Алиса в Зазеркалье» Чёрная королева говорит: «Здесь нужно бежать со всех ног, чтобы только оставаться на месте». Эта цитата идеально описывает электронную коммерцию и интернет-бизнес в целом.

Чтобы изменить Ozon, нам нужны две вещи: время и люди. Хоть и бежать нужно со всех ног, какое-то время у нас есть — мы понимаем, что за один день компанию не изменить. А вот люди нам нужны прямо сейчас. В первую очередь — Go-разработчики.

Антон Степаненко
директор по разработке платформы

Почему именно Go

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

В своей архитектуре Ozon использует Kubernetes и другие инструменты от Google, которые написаны в том числе на Go. Это позволяет не разрабатывать свои решения, а дорабатывать готовые. Кроме того, в инструментах для высоконагруженных систем есть адаптеры для Go.

Ещё одна важная причина — создание экосистемы на основе одного языка. Например, все продукты Alibaba построены на Java. Огромный ритейлер создаёт кастомные версии всех необходимых продуктов — вот, к чему стремится Ozon.

С другими языками всё не так просто. Популярный и давно закрепившийся на рынке PHP прост в изучении, но у него небольшие проблемы с производительностью. Кроме того, из-за простоты языка в PHP-сообществе много специалистов с небольшим опытом.

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

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

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

Антон Степаненко
директор по разработке платформы

Идеальный кандидат

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

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

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

  • Опыт работы с Linux. Серверы Ozon основаны на этом семействе операционных систем, поэтому сотрудник должен уметь работать с терминалом ОС.

  • Опыт работы в команде. Нужно понимать, что в проекте есть другие люди, с которыми предстоит общаться; система контроля версий, тикеты с распределением задач, код-ревью. Придётся взаимодействовать с коллегами из самых разных отделов, будь то разработка, тестирование или продуктовые менеджеры. Петь корпоративные гимны не придётся.

Что предлагает Ozon

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

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

Рабочее место в «Москва-Сити». Несколько десятков переговорных, MacBook или Dell, мониторы, частично компенсируемая парковка.

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

Сергей Федосенко

руководитель группы бэкенд-разработчиков

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

Питание. Кухни с едой для перекусов есть на каждом этаже. Для тех, кто задержался в офисе, есть ужины с 20:00.

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

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

Отдых. В офисе есть вечерние занятия йогой, беговой клуб, теннисные столы. Сотрудники могут оформить корпоративную программу в фитнес клубы World Class, X-Fit и «5 элемент». В актовом зале проходят корпоративные мероприятия Crazy Fridays, митапы и лекции.

Партнёрские программы. Скидка на каршеринг BelkaCar, Mybook, Shelly, бонусы от «Райффайзенбанка» и «Сбербанка».

Конкурентная зарплата — выше рыночной.

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

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

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

Антон Степаненко
директор по разработке платформы
Посмотреть вакансии
{ "author_name": "OZON.ru", "author_type": "editor", "tags": [], "comments": 67, "likes": 24, "favorites": 2, "is_advertisement": false, "subsite_label": "ozon", "id": 45542, "is_wide": true, "is_ugc": false, "date": "Tue, 18 Sep 2018 10:37:14 +0300" }
{ "id": 45542, "author_id": 190242, "diff_limit": 1000, "urls": {"diff":"\/comments\/45542\/get","add":"\/comments\/45542\/add","edit":"\/comments\/edit","remove":"\/admin\/comments\/remove","pin":"\/admin\/comments\/pin","get4edit":"\/comments\/get4edit","complain":"\/comments\/complain","load_more":"\/comments\/loading\/45542"}, "attach_limit": 2, "max_comment_text_length": 5000, "subsite_id": 190242 }

67 комментариев 67 комм.

Популярные

По порядку

Написать комментарий...
7

Очередную "серебрянную пулю" пробуют. Видел уйму таких историй, по типу: новый тех. дир. или кто-то из высшего руководства и говорит: "наш YYY (некий язык программирования) говно, архитектура говно и всё надо переделать по уму, наладить девопс и микросервисы, перейти на язык XXX (вставить по вкусу)". Затем год-полтора идёт перестройка, все учат новые, прогрессивные языки и фреймворки, проходят ажаль-треннинги, резко бирюзовеют (привет сберджайлу) и т.п. А затем тех. дир уходит на новую поляну, на его смену приходит новый и всё начинается сначала: "ваш стек говно, архитектура говно и т.п."

Ответить
3

В озоне прямо сейчас работают порядка сотни GO-разработчиков с более чем 3х летним опытом работы в Лазаде. А нагрузки в Лазаде были на порядки выше чем сейчас в озоне.
В 2015 году когда в рунете не было толком никого с опытом коммерческой разработки на го, вот тогда скепсис относительно выбора этого языка был еще более менее оправдан. И уже тогда мы в лазаде набрали сотню разработчиков без знания Го, и на месте обучали и учились сами.
Так что проблемы с наймом людей нет. Было бы желание, а желание у разработчиков таки есть, как показывает практика.
Ну а вы продолжайте острить.

Ответить
0

Спасибо Ваше за разрешение, чо уж ))

Ответить
1

Это наверное тех. директор обиделся)

Ответить
3

Не, техдиректор это я и я не обиделся

Ответить
1

Че за лазанда, нагуглил только спрей для носа https://lazanda.com/

Ответить
1

Lazada. Маркетплейс в Юго-Восточной Азии. Принадлежит Алибабе

Ответить
1

бронзовеют в смысле?! (отсылка к статуям из бронзы)

Ответить
1

Нет, это про "бирюзовые" организации, поищите - многое узнаете интересного, сейчас на волне хайпа как раз тема

Ответить
0

пасип :) поищу
---
https://habr.com/post/323532/

Ответить
4

Почему go?

Ответить
4

быстрый [почти] как С, но проще
популярне, ччем Erlang
сложнее [в плане культуры и навыков инженеров], чем PHP/Ruby (я пыхер к слову)
относительно популярный и модный
многопоточный [привет NodeJS]

Ответить
0

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

Ответить
2

С памятью меньше заморочек. Ну и как-бы заточен под микросервисы.

Ответить
0

Я не знаком с Go, но интересно, что значит, язык программирования "заточен под микросервисы"? А то первое, что приходит на ум в этой связи, что он просто "не заточен под большие проекты".

Ответить
3

Много всяких плюшек для взаимодействия между сервисами. Минимальный Rest API пишется буквально в пару строк.

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

Ответить
1

А ещё "заточен", т.к что-либо сложнее на нем написать слишком сложно.. есть даже мнение, что специально так сделано)))

Ответить
4

Почитал статью и комментарии. Я работал в лазаде и это, пожалуй, наиболее технологичная компания с отлаженным процессом разработки и отличным отношением к людям. Стек лучший из тех, с которыми мне приходилось работать. По мне один основной язык - это очень удобно, позволяет быстрее решать задачи, чем разношерстный стек под который, иногда, еще сложнее найти разработчиков и зачастую эти технологии могут быть состыкованы по принципу "лишь бы работало". К тому же язык очень требователен к качеству кода, к стилевому оформлению и т.п. Имеет большое количество анализаторов кода. Да, это отличный компромисс между скоростью разработки и скоростью исполнения, плюс компиляция под разные платформы. Здесь много можно написать про go, микросервисы и тех. стек, кто захочет подробнее - найдет в интернете. В свое время в лазаде собрались очень хорошие специалисты, многие из которых перешли в озон с большим опытом на го, и опытом работы на других языках: php, java... Я бы прислушался к их мнению прежде чем делать однозначные выводы.

Ответить
3

"Нужен разраб. Предлагаем еду, подушки, есть где посидеть, то да се, вас там много таких будет"

Ответить
3

Похоже на какую-то Go-секту, причины выбора Go тоже странные:
"Язык программирования Go — это разумный компромисс между скоростью разработки и сложностью изучения, размером сообщества разработчиков, зрелостью языка и его производительностью."
Это не компромисс, Go выбирают такие за скорость языка, компилируемого в нативный код. Чуть удобнее, чем писать на C.

"В своей архитектуре Ozon использует Kubernetes и другие инструменты от Google, которые написаны в том числе на Go. Это позволяет не разрабатывать свои решения, а дорабатывать готовые."
Это вообще сомнительная причина, вы там в Озоне что, системные средства пишите или товары продаете?

"Например, все продукты Alibaba построены на Java."
Это, мягко, говоря, не так. В Alibaba что только не используется для их инфраструктуры. Основная платформа у них это Java, но помимо этого они также используют Go, C, Lua(Tengine), Node.js.
Вот список их открытых разработок:
https://medium.com/@alitech_2017/alibabas-open-source-core-technologies-of-2017-2734ba5c154a

В каждой технологии есть свои недостатки, поэтому выгодно использовать инструменты под свои задачи, например Go/C/C++ - там где нужна скорость, в остальных случаях выбор компилируемого языка не самый выгодный вариант. Полагаю, чуть позже Озон одумается и сделает правильный выбор на более эффективные средства разработки.

Ответить
3

Ну наканецта в России появится [Am]Ozon

Ответить
3

сразу 200?! во Анатоликс разошёлся ) это ж собеседователей тоже надо будет на go переписать, чтоб асинхронно собеседовали.

Ответить
0

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

Ответить
4

Статическая типизация не нужна же, ага ага

И "так же быстро работают", да да

(мне Go не нравится, если что)

Ответить
–2

В питоне уже есть статическая типизация если надо. Да, скорость разработки быстрее и если запускать по воркеру на одно ядро то такой же быстрый как и Go.

Ответить
1

Вы кажется не очень хорошо знаете питон. Смотрите по воркеру на ядро в питоне можно запускать тредами или процессами. С тредами вас ждет global interpreter lock и плохая параллелизация. С fork вас ждет тупое копирование всей памяти кратно количеству форков, тк в каждом объекте счетчик ссылок, который делает страничку dirty. Поищите все эти термины, это поможет вам продвинуться до уровня миддла в питоне.
И да в питоне нету статической типизации, типы не проверяются во время компиляции.

Ответить
–1

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

Ответить
0

Вы можете зайти ко мне в github/anatolix и посмотреть там deep learning проект на python, которому меньше года, в котором мне понадобилось переписать 2000 строк c++ на 200 строк на python и получилось примерно в 5-10 раз быстрее по скорости выполнения в результате чем c++. И там есть многопоточность. Ваш код на python можете показать если есть что.
Ваш комментарий показывает, что по существу вам ответить нечего, вы слышали что-то про type hints, но сами их не использовали, а только знаете что их используют где-то в facebook. Для информации type hints проверяются в динамике, а не в статике как в строго типизированных языках, те это скорей не тип а встроенный unit test/assert на соответствие типу.

Ответить
0

go это немного не "очередная новая технология", к тому же, goroutines для разработчика даже проще, чем asyncio.

Ответить
2

Микросервисы...укус Грефа detected

Ответить
2

На рынке есть примеры реализации "безкомпромисной микросервисной архитектуры". В большинстве случаев это приводит к хаосу. В одном известном мне подразделении крупной почтовой компании был принят план разделить систему на примерно 60 микросервисов. Несколько лет ушло на создание "критической массы микросервисов". После того как ее создали, оказалось что теперь со всей этой ... мы попытаемся взлететь. Результатом стало что компания потеряла много времени и средств, взлететь то не получилось. Техдира уволили.

Ответить
0

Конкурентная зарплата — выше рыночной

Господи.. почему... почему компании так тщательно скрывают вилку ЗП???

Ответить
2

Мы не скрываем, в объявлениях пишем. Senior - 250.

Ответить
1

Ответ кроется в принципах работы фондовой биржи. Смотреть формирование цены через ask/bid

Ответить
1

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

Ответить
0

И что нужно делать что бы такого не было ?

Ответить
1

не светить деньги в открытых источниках

Ответить
0

Ну так коллеги же все равно знают кто сколько получает ?

Ответить
1

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

Ответить
0

Для этого есть понятие вилки. Ни одна здравая компания не будет ставить зп - 200к. Ставят 150-200k. Я вообще не аплаюсь никогда не позиции, где нет хоть какого-то понимания относительно того, сколько компания готова платить. Я не хочу потратить кучу своего времени (которое не бесплатно) на болтовню и предварительные раунды собеседований, чтоб в итоге узнать что получать я буду в три раза меньше того, на что расчитываю. Неужели так трудно подумать головой и поставить себя на место соискателя...

Ответить
0

почему кучу-тебе звонит эйчар, спрашивает твои ожидания и все. дело 1 минуты

Ответить
0

почему так трудно подумать головой и поставить себя на место работодателя или эйчара ) это же вы ищете работу, таких как вы - миллионы )

Ответить
0

Это вы так думаете. Мы два месяца не можем найти специалиста в сердце силиконовой долины, о каки миллионах вы говорите..

Ответить
0

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

Ответить
0

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

Ответить
0

На самом деле у меня нет проблем сказать, что есть коллеги получающие и по 400+. Я наоборот мечтаю столько кому угодно заплатить, только давайте вот польза будет соответствовать. Утром польза, вечером деньги.

Ответить
0

400 плюс это за мидла или синьора ?)

Ответить
0

это синьор+1. в яндексе над синьором ещё кажется 3 градации, в гугле - ещё больше. всё зависит от размера компании

Ответить
0

а что даст вилка 50-300 ? Какое понимание ?

Ответить
0

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

Ответить
0

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

Ответить
0

Думаю, можно ориентироваться на 180 — 250 тыс gross (взято с http://rsdn.org/forum/job.offers/7179083.flat#7179083), так что, про "выше рыночной" это неправда.
Ездить в Москва сити очень неудобно, большие интервалы поездов, длинные переходы. Это минус, а не плюс.

Ответить
0

А какая рыночная/выше рыночной с вашей точки зрения?

Ответить
0

200-300 net

Ответить
1

"для трансформации в технологическую компанию.". Ozon-у бы трансформироваться в "Сервисную компания" . Но до понимания этого Ozon еще надо дорасти. Тогда может все же и создадут Product Department.

Ответить
0

Думаю масштабное использование GO, при дефиците людей на рынке, которые им владеют - это отличная возможность пустить компанию под откос :)

Ответить
1

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

Ответить
1

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

Ответить
1

Unless это 5 или 10 язык программирования, ооп головного мозга не было, и асинхронщину мы уже где-то видели

Ответить
0

Двести, солидно.
Не боитесь сложности поддержки (maintain) микросервисов лет через 5?

Ответить
3

Так наоборот это хорошо. Вот монолит через 5 лет поддерживать было бы тяжело

Ответить
1

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

Ответить
0

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

Ответить
5

Я сын той тачки, все не так однозначно.

Ответить
5

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

Ответить
0

Вот я так хотел написать. Но не смог.

Ответить

Комментарий удален

0

Прямой эфир

[ { "id": 1, "label": "100%×150_Branding_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox_method": "createAdaptive", "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "ezfl" } } }, { "id": 2, "label": "1200х400", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "ezfn" } } }, { "id": 3, "label": "240х200 _ТГБ_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fizc" } } }, { "id": 4, "label": "240х200_mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "flbq" } } }, { "id": 5, "label": "300x500_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "ezfk" } } }, { "id": 6, "label": "1180х250_Interpool_баннер над комментариями_Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "bugf", "p2": "ffyh" } } }, { "id": 7, "label": "Article Footer 100%_desktop_mobile", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fjxb" } } }, { "id": 8, "label": "Fullscreen Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fjoh" } } }, { "id": 9, "label": "Fullscreen Mobile", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fjog" } } }, { "id": 10, "disable": true, "label": "Native Partner Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyb" } } }, { "id": 11, "disable": true, "label": "Native Partner Mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyc" } } }, { "id": 12, "label": "Кнопка в шапке", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "p1": "bscsh", "p2": "fdhx" } } }, { "id": 13, "label": "DM InPage Video PartnerCode", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox_method": "createAdaptive", "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "bugf", "p2": "flvn" } } }, { "id": 14, "label": "Yandex context video banner", "provider": "yandex", "yandex": { "block_id": "VI-223676-0", "render_to": "inpage_VI-223676-0-1104503429", "adfox_url": "//ads.adfox.ru/228129/getCode?pp=h&ps=bugf&p2=fpjw&puid1=&puid2=&puid3=&puid4=&puid8=&puid9=&puid10=&puid21=&puid22=&puid31=&puid32=&puid33=&fmt=1&dl={REFERER}&pr=" } }, { "id": 15, "label": "Плашка на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byudx", "p2": "ftjf" } } }, { "id": 16, "label": "Кнопка в шапке мобайл", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byzqf", "p2": "ftwx" } } }, { "id": 17, "label": "Stratum Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fzvb" } } }, { "id": 18, "label": "Stratum Mobile", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fzvc" } } }, { "id": 19, "label": "Тизер на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "p1": "cbltd", "p2": "gazs" } } } ]
Команда калифорнийского проекта
оказалась нейронной сетью
Подписаться на push-уведомления