Как стать автором
Обновить
340.04
Ozon Tech
Команда разработки ведущего e‑com в России
Сначала показывать

От стажёра до лида. Дорога длиною в Travel

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

Всем привет!
Меня зовут Катя Громова. Я работаю руководителем продуктового дизайна в Ozon Travel.

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

В этой статье я отвечу на следующие вопросы. Возможно ли вырасти от стажёра до руководителя в одной компании? Как сделать так, чтобы бизнес считался с дизайном? Что должен делать руководитель дизайн-команды? Или это всё простые истины, и вы уже заряжены на успех и готовы закрыть эту статью? Нет? Значит, пристегните ремни — и поехали!

С чего всё началось

От depth map* до нейросети: практический опыт создания аппаратного решения по измерению товаров на складе

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

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

Читать далее

Информационная безопасность для цифровых кочевников

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

Привет! Меня зовут Аня, я менеджер продукта в департаменте информационной безопасности Ozon Tech. Сейчас я занимаюсь проектом по внедрению дополнительных механизмов проверки прав пользователей при доступе к корпоративным ресурсам. Этот опыт помог мне иначе взглянуть на угрозы, с которыми сталкиваются сотрудники, работающие удалённо и при этом часто меняющие место работы.

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

Поехали

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

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

Ни для кого не секрет, что в нашей стране практически любой руководитель в сфере IT начинал свою профессиональную карьеру рядовым сотрудником. Причины, побуждающие специалиста начать двигаться в сторону руководящих позиций, могут быть разными, и в зависимости от причин скорость этого пути также может существенно различаться. Однако сам процесс становления «молодого» руководителя почти всегда сопряжён с одними и теми же проблемами. Основываясь на личном опыте и опыте наших коллег и подчинённых (которые тоже руководители), мы хотим коротко разобрать проблемы, особенно беспокоящие и мешающие вчерашним разработчикам, выбравшим сегодня путь своего развития в качестве руководителя группы или отдела. Более высокопоставленным руководителям эта статья также может быть полезна при менторстве «младшего командного состава».

Добро пожаловать!

Kafka: ребалансировка изнутри

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

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

Хотя информации о ребалансировке Kafka достаточно, она часто либо слишком разрозненная и техническая, либо наоборот — поверхностная и без акцента на важные детали. Я собрал для вас самое важное и объясню это простым и понятным языком.

Читать далее

Взгляд на 1С глазами безопасника

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

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

Коротко о важном
• Статья не является рекламной и не имеет под собой намерения похвалы или критики программных продуктов 1С. Любая внедряемая система потребует необходимости уметь её «готовить», и продукт 1С не исключение.
• Поскольку я не являюсь разработчиком 1С, далёк от профильной терминологии и в целом целевая аудитория статьи — всё-таки специалисты по информационной безопасности, которым уже пришлось или только предстоит плотно столкнуться с программными продуктами 1С, многие вещи будут трактоваться довольно свободно и в упрощённом для понимания виде.
• В статье не будет охватываться раздел пентеста платформы 1С, а также связанной с этим эксплуатации уязвимостей — эта тематика не нова, и на просторах «Хабра» (и не только) уже давно можно найти отличные публикации.
• Статья не претендует на истину в первой инстанции. Она своего рода первая проба пера, попытка структурировать опыт знакомства с продуктами 1С и консолидировать основные узкие места безопасности, свойственные построению бизнес-процессов с использованием 1С.
• Если вы из тех, кому необходим пошаговый чек-лист, то спешу вас огорчить, так как универсального ответа не будет, но надеюсь, что вопросы, поднятые в статье, смогут подтолкнуть вас к составлению по итогу своего собственного.

Читать далее

Математика на складе. Как оптимизировать хаос

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

Привет! Меня зовут Анна Дубенюк, я выпускница и преподаватель ФКН ВШЭ, автор канала всё предельно, и недавно было 3 года, как я работаю в Ozon Tech. За это время из пары математиков в команде разработки мы выросли в отдельную команду RnD, помогаем оптимизировать процессы, находим точки роста и снижаем неопределённость с помощью математического моделирования и исследований.

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

Читать далее

Дело о несрабатывающем тайм-ауте. Проблемы гистограмм Prometheus

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

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

Читать далее

Многопоточность в мобильных приложениях: руководство для QA-инженеров

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

Всем привет! Меня зовут Ира, я руковожу отделом тестирования мобильной платформы в Ozon Tech. Наш отдел занимается разработкой инструментов для автоматизации тестирования мобильных приложений Ozon и тестированием внутренних библиотек.

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

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

Читать далее

Как мы ускоряли Android-сборку «селлера»

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

Всем привет! Меня зовут Женя, я руководитель отдела разработки «Аккаунт» в мобильном приложении для продавцов платформы Ozon Seller. Поделюсь нашим опытом работы над улучшением скорости сборки Android-проекта.

Скорость сборки проекта напрямую влияет на time to market продукта и (внезапно) удовольствие от процесса разработки. Если каких-то 50 лет назад время компиляции могло доходить до нескольких дней, и это считалось нормальным, то сейчас даже лишняя пара минут сборки проекта в Android Studio может заставить понервничать. Чтобы сберечь здоровье себе и CI, скорости сборки проекта нужно уделять внимание. Нетерпеливые читатели могут сразу посмотреть итоговую таблицу с результатами в конце статьи.

Читать далее

Kelp — IDE-плагин для кастомных дизайн-систем на Jetpack Compose

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

Kelp — мощный плагин для Android Studio, разработанный для улучшения поддержки кастомных дизайн-систем на Jetpack Compose в Android Studio.

Основные фичи:
🔧 Настраиваемые иконки для компонентных функций
🎨 Иконки дизайн-системы
🌈 Предпросмотр цветов
📱 Интеграция демоприложения (автоматическое скачивание и установка APK-файла и deeplinking на страницу компонента)
🖼️ Рендеринг изображений в KDoc
⌨️ Шаблоны кода (Live Templates)

И 🐘 Gradle Plugin, скачивающий демоприложение и проверяющий наличие IDE-плагина.

Читать далее

Новый стайлгайд для технических писателей Ozon Tech: шаги, описания разделов и выводы

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

Привет! Меня зовут Аня Салугина, я технический писатель в Ozon Tech. Наша команда готовит и актуализирует документацию для покупателей, продавцов, партнёров, разработчиков и сотрудников Ozon. Недавно мы решили, что хотим улучшить наш стайлгайд и сделать его публичным.

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

Спойлер: командная работа — ключ к успеху.

Читать далее

Управление учётными записями и настройка корпоративной техники при онбординге. Взгляд со стороны ИБ

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

Привет! Меня зовут Роза, я старший инженер инфраструктурной безопасности в Ozon Tech. В этой статье я расскажу о ключевых подходах к управлению учётными записями и настройке корпоративных устройств в нашей компании при onboarding (от англ. адаптация, далее по тексту — онбординг). Это может быть полезно вам, если вы занимаетесь аналогичной историей в своей организации. Вы узнаете про опыт Ozon, что мы имеем сейчас и как планируем адаптировать процессы онбординга к условиям удалённой работы и отсутствия централизованных инструментов управления ноутбуками, сохраняя при этом прозрачность.

В эпоху «удалёнки» контроль за учётными записями и настройка корпоративных устройств стали настоящим вызовом. Столкнувшись с ограничениями на использование специализированного ПО, многие компании оказались перед задачей: как организовать онбординг новых сотрудников, когда возможности централизованного управления через системы MDM (Mobile Device Management, далее по тексту — MDM) недоступны. Как подготовить ноутбуки и обеспечить безопасность, когда процессы, давно отлаженные для офисных условий, рушатся в реалиях дистанционной работы? В связи с этим компании вынуждены искать креативные и эффективные решения, чтобы обеспечить бесперебойную работу сотрудников, не снижая при этом уровень безопасности данных и защищённости инфраструктуры. Давайте начнём разбираться.

Читать далее

Оптимизируем релиз мобильного приложения: что получилось, а что нет

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

Привет, Хабр! Меня зовут Александр, я — руководитель группы тестирования в мобильном приложении для продавцов «Ozon Seller». Общаясь с тестировщиками из разных компаний, часто слышу про одну и ту же боль — долгий регресс руками, который из раза в раз отнимает уйму времени, сил и мотивации.

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

Читать далее

Маскирование данных от А до Я

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

Всем привет! Меня зовут Светлана Анохина, я младший бизнес-партнёр по информационной безопасности в Ozon. Несмотря на небольшой стаж, опыт работы у меня довольно разносторонний, ведь моя роль предполагает участие практически во всех аспектах безопасности (если интересно, кто такие бизнес-партнёры по ИБ, то рекомендую почитать статьи моих коллег Даши или Максима на эту тему).

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

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

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

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

За время своей работы в e-commerce-компаниях я собрала некоторый перечень подходов и инструментов защиты, которые реализую в своём направлении. Сегодня я хочу рассказать о маскировании вам, моим коллегам, которые так же, как и я, стремятся сделать данные безопасными, а жизнь пользователей — спокойной.

Читать далее

UI-kit в разных структурах Ozon

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

Всем привет! 

Меня зовут Курилкина Арина, я почти год являюсь фронтенд-разработчиком интеграционных и инфраструктурных сервисов склада. Также я 2,5 года разрабатывала мессенджер для сайтов Покупателя (Buyer Experience или же, как мы у себя говорим, — BX) и Продавца (Seller Experience — SX). Таким образом, я успела поработать с продуктами трёх крупных структур Ozon: BX, SX и Warehouse (Складские сервисы*).

Каждая структура уникальна, имеет свои потребности, свои проблемы и свои решения. И каждая является неотъемлемой частью функционирования компании Ozon. Своеобразные три кита, на которых стоит маркетплейс. Поработав с каждым из них, я посмотрела на клиентскую разработку и на работу с дизайн-системами и UI-kit’ами, в частности, с разных сторон. И теперь я хочу поделиться своим опытом.

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

Читать далее

Как мы адаптируем Agile в Ozon?

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

Привет, Хабр! Меня зовут Антон, я — тимлид в Ozon. За более чем 20 лет работы в IT, где свыше 15 из них выпало на управленческие должности, меня покидало по разным проектам разработки ПО. Познавая управленческое мастерство, я нередко замечал, как на проектах игнорировали самую важную часть — ориентированность на Клиентов, то есть для кого мы, собственно, эти проекты и продукты реализуем.

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

Проблемы Agile отмечают не только рядовые пользователи, но и такие мастера, как Роберт С. Мартин и Кент Бек — двое из тех, кто составил Agile Manifesto. Как отмечает Ален Холуб, Agile в последнее время стал означать: делать половину задач (активностей) из Scrum плохо с использованием Jira.

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

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

Итак, подслушано в баре об Agile: некомедия в пяти актах...

Третий звонок. Занавес поднимается...

Как, имея более 200 методов HTTP, смэтчить их с тем, в какие сервисы они ходят

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

Привет, Хабр! На связи команда Seller API, а именно её тимлид Саша Валов и старший разработчик Никита Денисенко. В этой статье мы разберём одну из проблем большого API и расскажем, как мы её решили.

Читать далее

Babysitter для больших менеджеров

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

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

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

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

Кто-то может сказать: «А что тут такого? Просто стандартное управление ожиданиями одной из заинтересованных сторон» и будет прав, но не совсем. Управление «вверх» — это управление не только теми ресурсами, которые тебе выделили для выполнения проекта, удовлетворение пожеланий и ожиданий высшего руководства. Это обеспечение успеха проекта, одновременное жонглирование вниманием топ-менеджеров, и это непростая задача. 

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

Читать далее

Dagger 2: как сделать свой DI за 10 минут

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

Привет, меня зовут Иван Курак, я Android-разработчик приложения Ozon Job. Если в первой статье мы разбирали фреймворк Koin, то во второй на наш исследовательский стол попадёт Dagger, который мы используем на большинстве проектов Ozon, в том числе на приложении Ozon Курьер Экспресс, за которое отвечает наш отдел.  Это мобильное приложение, которое позволяет курьерам-фрилансерам и водителям службы доставки взять подработку в Ozon и доставлять экспресс-заказы от селлера напрямую клиенту или в ПВЗ Ozon.

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

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

Эта статья будет полезна тем, кто использует Dagger 2 в своих приложениях и иногда/часто попадает в ситуации непонимания, почему Dagger 2 ведёт себя не так, как мы ожидаем. А это может создавать определённые трудности, особенно при отладке сложных проблем или при необходимости настройки более сложных сценариев внедрения зависимостей.

Например, в приложении Ozon Курьер Экспресс ведутся большие работы по переписыванию приложения на новую архитектуру. Поэтому рядом с существующей DI-архитектурой появилась вторая DI-архитектура.  Чтобы их подружить, пришлось покопаться во внутренностях кода, что генерирует Dagger 2.

Дополнительная (но не менее важная) цель статьи — показать, что базовый код, который генерирует Dagger, не такой уж и страшный :).

Читать далее
1
23 ...

Информация

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