Привет, я Александр Меньшиков, ведущий разработчик базового поиска. Мы в команде относимся к разработке как к культурному феномену: не просто закрываем задачи в джире, но ещё фиксируем во внутренних статьях нетривиальные знания, полученные в ходе работы.
В статье на Хабре я рассказал, как этот подход работает в контексте оптимизации поискового движка, поделился устройством наших процессов, дал конкретные рекомендации по написанию горячего кода и наводки: что делать, когда, казалось бы, всё уже написано оптимально.
Буду рад узнать, как вы относитесь к документированию процесса разработки и что фиксируете в отчётах. Делитесь в комментариях!💬
#ozontech_habr
В статье на Хабре я рассказал, как этот подход работает в контексте оптимизации поискового движка, поделился устройством наших процессов, дал конкретные рекомендации по написанию горячего кода и наводки: что делать, когда, казалось бы, всё уже написано оптимально.
Буду рад узнать, как вы относитесь к документированию процесса разработки и что фиксируете в отчётах. Делитесь в комментариях!
#ozontech_habr
Please open Telegram to view this post
VIEW IN TELEGRAM
Что можно успеть за вечер? Кажется, не так много: посмотреть фильм, сходить в зал или написать кастомное межсервисное взаимодействие на основе gRPC-go.
Меня зовут Ильяс, в новой хабрастатье мы с вами напишем современные алгоритмы балансировки, настроим канареечные деплои, а также узнаем, как реализовать кучу других супернеобычных механизмов межсервисного взаимодействия при помощи gRPC.
#ozontech_habr
Меня зовут Ильяс, в новой хабрастатье мы с вами напишем современные алгоритмы балансировки, настроим канареечные деплои, а также узнаем, как реализовать кучу других супернеобычных механизмов межсервисного взаимодействия при помощи gRPC.
#ozontech_habr
Знаете чувство, когда достали из дженги кубик, а башня не развалилась? Микрофронтенды делают то же самое с приложениями.
Меня зовут Алексей, в своей новой статье на Хабре рассказываю, кому нужны микрофронтенды, об их преимуществах и недостатках. Поговорим про плагины-сборщики, интеграцию с Typescript и хранилищами данных. Будут картинки и примеры кода — пропустить невозможно.
#ozontech_habr
Меня зовут Алексей, в своей новой статье на Хабре рассказываю, кому нужны микрофронтенды, об их преимуществах и недостатках. Поговорим про плагины-сборщики, интеграцию с Typescript и хранилищами данных. Будут картинки и примеры кода — пропустить невозможно.
#ozontech_habr
Сказка — ложь, да в ней намёк: что может случиться с ML-моделями, если пренебречь практиками ИБ.
На связи Никита Губорев, специалист по информационной безопасности Ozon Tech. Сегодня я расскажу хабрасказку, как не получить в подарок испорченные данные, и что делать, чтобы ваши ML-эксперименты не пострадали от атак.
#ozontech_habr
На связи Никита Губорев, специалист по информационной безопасности Ozon Tech. Сегодня я расскажу хабрасказку, как не получить в подарок испорченные данные, и что делать, чтобы ваши ML-эксперименты не пострадали от атак.
#ozontech_habr
Замечали, что стоит вам найти какой-то товар на маркетплейсе, система сразу подсказывает, где взять такой же, но дешевле или с более удобной доставкой?
Меня зовут Иван Антипов, сегодня я расскажу, как мы разрабатываем алгоритмы поиска одинаковых товаров. Поговорим про графы, матчинг, а также разберёмся в конфликте каратистов.
#ozontech_habr
Меня зовут Иван Антипов, сегодня я расскажу, как мы разрабатываем алгоритмы поиска одинаковых товаров. Поговорим про графы, матчинг, а также разберёмся в конфликте каратистов.
#ozontech_habr
Мы внедрили инструмент Apple для мобильного сканирования в приложение «Пункт Озон», и где-то облегчённо вздохнули сотрудники ПВЗ.
Привет, это Никита Никитин, старший iOS-разработчик. Главной сложностью работы мобильного сканера являются несовершенства штрих-кодов — плохо пропечатанные, порванные, помятые — встречаются всякие. И если штрих-сканер для ПК в этом не видит проблемы, то камера смартфона не справляется.
Зато справляется моя команда. Мы протестировали три инструмента Apple для апгрейда мобильного сканера и внедрили один. С ним сотрудники не только без проблем сканируют повреждённые штрих-коды — весь процесс сканирования ускорился.
Полная история внедрения и бонусом — технический обзор VNDetectBarcodesRequest — в моей хабрастатье.
#ozontech_habr
Привет, это Никита Никитин, старший iOS-разработчик. Главной сложностью работы мобильного сканера являются несовершенства штрих-кодов — плохо пропечатанные, порванные, помятые — встречаются всякие. И если штрих-сканер для ПК в этом не видит проблемы, то камера смартфона не справляется.
Зато справляется моя команда. Мы протестировали три инструмента Apple для апгрейда мобильного сканера и внедрили один. С ним сотрудники не только без проблем сканируют повреждённые штрих-коды — весь процесс сканирования ускорился.
Полная история внедрения и бонусом — технический обзор VNDetectBarcodesRequest — в моей хабрастатье.
#ozontech_habr
Это было не просто смело, это было… сложно: мы поменяли часть давно функционирующих процессов, которыми пользуются все в компании, во имя безопасности🛡
При участии специалистов из ИБ, стейкхолдеров и разработчиков реализовали важный проект по соблюдению требований инфобеза. И ничего не сломали.
Привет, меня зовут Александра Медвецкая. Я специалист по информационной безопасности и проджект-менеджер упомянутого выше проекта.
В этой хабрастатье я подробно описала весь роадмап: от выявления несоответствий до ретро. Конечно, когда безопасность учитывается на этапе проектирования архитектуры — это прекрасно. Но и если обновления пришли в уже готовую систему — ничего страшного. Хотя по началу именно такие ощущения :)
#ozontech_habr
При участии специалистов из ИБ, стейкхолдеров и разработчиков реализовали важный проект по соблюдению требований инфобеза. И ничего не сломали.
Привет, меня зовут Александра Медвецкая. Я специалист по информационной безопасности и проджект-менеджер упомянутого выше проекта.
В этой хабрастатье я подробно описала весь роадмап: от выявления несоответствий до ретро. Конечно, когда безопасность учитывается на этапе проектирования архитектуры — это прекрасно. Но и если обновления пришли в уже готовую систему — ничего страшного. Хотя по началу именно такие ощущения :)
#ozontech_habr
Please open Telegram to view this post
VIEW IN TELEGRAM
Сколько раз нужно сходить в GitLab, JIRA, системы мониторинга и другие сервисы разработчику, который устанавливает релиз? Чтобы минимизировать число таких походов, учесть разные паттерны поведения, решить боли инженеров, мы разработали собственный портал REpublic. Через него каждый день выкатываются тысячи релизов 😎
Привет! Меня зовут Валерия Зарубенкова, и я пришла рассказать, как мы создавали REpublic.
Это будет интересно разработчикам, которые хотят контролировать происходящее с релизом в любой момент времени. И дизайнерам — в хабрастатье я описываю процессы и исследования, которые помогли создать качественный продукт.
#ozontech_habr
Привет! Меня зовут Валерия Зарубенкова, и я пришла рассказать, как мы создавали REpublic.
Это будет интересно разработчикам, которые хотят контролировать происходящее с релизом в любой момент времени. И дизайнерам — в хабрастатье я описываю процессы и исследования, которые помогли создать качественный продукт.
#ozontech_habr
Please open Telegram to view this post
VIEW IN TELEGRAM
Допустимы ли стажёры в ИБ?
Спойлер: да.
Привет! Меня зовут Сергей Жидков, я руководитель отдела SOC. Принёс вам опыт создания небездушного конвейера подготовки молодых безопасников. Мы запустили его полтора года назад и сегодня имеем:
⚫️ 5 ex-стажёров, которые теперь — штатные специалисты;
⚫️ 3 действующих стажёра — на их счету 3 успешных месяца с нами;
⚫️ 3 стажёра-новичка — приняты не более 2-х недель назад;
⚫️ 2 кейса с не самым удачным, но ценным опытом.
О том, как мы всё устроили — от методов отбора до карьерных перспектив, я написал статью. С плюсами, минусами и подводными камнями, всё как полагается.
Читайте, забирайте инсайты, оставляйте лайки, если они у вас есть💙
#ozontech_habr
Спойлер: да.
Привет! Меня зовут Сергей Жидков, я руководитель отдела SOC. Принёс вам опыт создания небездушного конвейера подготовки молодых безопасников. Мы запустили его полтора года назад и сегодня имеем:
О том, как мы всё устроили — от методов отбора до карьерных перспектив, я написал статью. С плюсами, минусами и подводными камнями, всё как полагается.
Читайте, забирайте инсайты, оставляйте лайки, если они у вас есть
#ozontech_habr
Please open Telegram to view this post
VIEW IN TELEGRAM
Чтобы писать чистый и качественный код, нужно смотреть на чистый и качественный код 🧠
Привет, это Максим Гришутин. Я руковожу отделом разработки iOS-приложений и ищу путь к чистому и… Ну, вы поняли. А как считаете, важна ли насмотренность для разработчика?
Инженер с развитым «чувством кода» пишет так, что код не просто выполняет свою функцию, но и легко читается, без проблем масштабируется, тестируется и поддерживается в будущем.
Ставьте лайк, если согласны, и заходите в мою статью за подробностями: зачем и как развивать насмотренность.
#ozontech_habr
Привет, это Максим Гришутин. Я руковожу отделом разработки iOS-приложений и ищу путь к чистому и… Ну, вы поняли. А как считаете, важна ли насмотренность для разработчика?
Инженер с развитым «чувством кода» пишет так, что код не просто выполняет свою функцию, но и легко читается, без проблем масштабируется, тестируется и поддерживается в будущем.
Ставьте лайк, если согласны, и заходите в мою статью за подробностями: зачем и как развивать насмотренность.
#ozontech_habr
Please open Telegram to view this post
VIEW IN TELEGRAM
Разбор Kotlin context receivers
Привет! Меня зовут Максим Шестопёров. Я старший разработчик мобильных приложений в команде Антифрода и Ozon ID. В своей статье на Хабре я попытался выяснить, что такое context receivers и как с ними работать.
Спойлер: это как extension-функции, но позволяют использовать более одного receiver-аргумента. И это ещё не все преимущества. За подробностями заглядывайте в статью📎
А если у вас есть идеи, где и как применять сontext receivers, очень жду вас в комментариях. И здесь, и на Хабре.
#ozontech_habr
Привет! Меня зовут Максим Шестопёров. Я старший разработчик мобильных приложений в команде Антифрода и Ozon ID. В своей статье на Хабре я попытался выяснить, что такое context receivers и как с ними работать.
Спойлер: это как extension-функции, но позволяют использовать более одного receiver-аргумента. И это ещё не все преимущества. За подробностями заглядывайте в статью📎
А если у вас есть идеи, где и как применять сontext receivers, очень жду вас в комментариях. И здесь, и на Хабре.
#ozontech_habr
Загадка: результат хронического стресса на работе, с которым не удалось справиться.
Начинается на «вы», заканчивается на «горание».
Привет! На связи Виталий Ефремов. Я руковожу группой разработки CDP. Надеюсь, вы разгадали загадку 😏
Ещё сильнее надеюсь, что с правильным ответом не сталкивались. А мне пришлось дважды. Я решил посмотреть на вопрос под привычным мне инженерным углом, и на третий раз смог избежать выгорания.
Оглядываясь на свой опыт, я написал статью и зову вас обсудить эту тему в комментариях 💬
#ozontech_habr
Начинается на «вы», заканчивается на «горание».
Привет! На связи Виталий Ефремов. Я руковожу группой разработки CDP. Надеюсь, вы разгадали загадку 😏
Ещё сильнее надеюсь, что с правильным ответом не сталкивались. А мне пришлось дважды. Я решил посмотреть на вопрос под привычным мне инженерным углом, и на третий раз смог избежать выгорания.
Оглядываясь на свой опыт, я написал статью и зову вас обсудить эту тему в комментариях 💬
#ozontech_habr
Добавили в приложение три языка, и получился целый кейс
Привет! Меня зовут Андрей Бабков. Я старший разработчик в команде мобильного приложения для продавцов💻 Так как число селлеров и их география постоянно растут, мы добавили три языка: английский, турецкий и китайский. Локализация на iOS прошла успешно, хотя и пришлось решить пару интересных задачек.
Базовую реализацию Apple традиционно позволяет сделать очень легко. А потом начинают всплывать… Кхм, нюансы. О них и всяких разных трудностях, с которыми мы столкнулись в процессе, я рассказал в этой статье.
Там есть и системный алгоритм определения языка, и наш флоу работы со строками. Инджой, как говорится🍿
#ozontech_habr
Привет! Меня зовут Андрей Бабков. Я старший разработчик в команде мобильного приложения для продавцов
Базовую реализацию Apple традиционно позволяет сделать очень легко. А потом начинают всплывать… Кхм, нюансы. О них и всяких разных трудностях, с которыми мы столкнулись в процессе, я рассказал в этой статье.
Там есть и системный алгоритм определения языка, и наш флоу работы со строками. Инджой, как говорится
#ozontech_habr
Please open Telegram to view this post
VIEW IN TELEGRAM
Создать собственное устройство для измерения габаритов и веса товара? Умеем, практикуем.
Привет! Меня зовут Мария Гафурова, я руковожу группой разработки автоматизированных систем измерений ОВХ (объёмно-весовых характеристик) товара🎁 Мы в Ozon Tech нередко разрабатываем системы самостоятельно, так как рыночные решения не всегда отвечают нашим требованиям.
Но в этот раз мы создали кое-что необычное. Не просто инструмент или сервис. А измерительный программно-аппаратный комплекс с тремя камерами и несколькими алгоритмами, который позволяет оптимизировать складские и логистические процессы.
О том, как мы пришли к этой идее, как исследовали рынок и собирали своё решение, я рассказала в этой статье✉
#ozontech_habr
Привет! Меня зовут Мария Гафурова, я руковожу группой разработки автоматизированных систем измерений ОВХ (объёмно-весовых характеристик) товара
Но в этот раз мы создали кое-что необычное. Не просто инструмент или сервис. А измерительный программно-аппаратный комплекс с тремя камерами и несколькими алгоритмами, который позволяет оптимизировать складские и логистические процессы.
О том, как мы пришли к этой идее, как исследовали рынок и собирали своё решение, я рассказала в этой статье
#ozontech_habr
Please open Telegram to view this post
VIEW IN TELEGRAM
Зачем использовать подход Jobs To Be Done для развития внутренних продуктов?
Граф работ структурирует знания о действиях пользователей и ценности продукта. Да и в целом концепция JTBD позволяет шире смотреть на задачи и определять, какие фичи действительно нужны.
Привет, я Денис Соловьев, ведущий руководитель проектов в департаменте разработки PaaS. В одном из таких проектов — REpublic — я сделал ставку на JTBD и выиграл😏 Провёл 20+ интервью с инженерами и тимлидами, нашёл проблемы там, где их никто не видел, и визуализировал хотелки. Забегая вперёд: у нас получился простой и понятный портал для установки и отката релизов.
О процессе, продуктовых решениях и ценностях, которые мы можем найти только в головах разработчиков, — читайте мою статью на Хабре📖
#ozontech_habr
Граф работ структурирует знания о действиях пользователей и ценности продукта. Да и в целом концепция JTBD позволяет шире смотреть на задачи и определять, какие фичи действительно нужны.
Привет, я Денис Соловьев, ведущий руководитель проектов в департаменте разработки PaaS. В одном из таких проектов — REpublic — я сделал ставку на JTBD и выиграл😏 Провёл 20+ интервью с инженерами и тимлидами, нашёл проблемы там, где их никто не видел, и визуализировал хотелки. Забегая вперёд: у нас получился простой и понятный портал для установки и отката релизов.
О процессе, продуктовых решениях и ценностях, которые мы можем найти только в головах разработчиков, — читайте мою статью на Хабре📖
#ozontech_habr
У вас keepalive на всех уровнях системы настроен? Проверьте как можно скорее 🏃♂
Привет, меня зовут Ильяс Нежибицкий, я ведущий разработчик команды Service Discovery. Принёс вам дружеское напоминание настроить алерты. А ещё — хабрастатью с механизмами проверки соединения между клиентом и сервером. Они понадобятся, когда обычные TCP keepalive из-за сложности архитектуры не смогут определить состояние последнего.
Предвосхищайте отказы, не теряйте трафик и про сердечки-огонёчки не забывайте :)
#ozontech_habr
Привет, меня зовут Ильяс Нежибицкий, я ведущий разработчик команды Service Discovery. Принёс вам дружеское напоминание настроить алерты. А ещё — хабрастатью с механизмами проверки соединения между клиентом и сервером. Они понадобятся, когда обычные TCP keepalive из-за сложности архитектуры не смогут определить состояние последнего.
Предвосхищайте отказы, не теряйте трафик и про сердечки-огонёчки не забывайте :)
#ozontech_habr
Please open Telegram to view this post
VIEW IN TELEGRAM
У нас две дизайн-системы: направленно продуктовая и универсальная. Они разговаривают на одном визуальном языке, но остаются самостоятельными. Это для баланса универсальности и специализации.
Привет, я Виктор Теплов, хранитель дизайн-системы OZI. Написал тут небольшой путеводитель по ДС на полчасика беглого чтения. Там про всё: компоненты, токены, цветовые модели, нейминг, документацию и другие важные штуки.
Читайте и не забывайте ставить плюсы, если было полезно❤
Для тех, кто хочет больше, приглашаю на свой YouTube-канал с лекциями про продуктивность и уроками по Figma, Notion, Blender и прочее, и прочее…
#ozontech_habr
Привет, я Виктор Теплов, хранитель дизайн-системы OZI. Написал тут небольшой путеводитель по ДС на полчасика беглого чтения. Там про всё: компоненты, токены, цветовые модели, нейминг, документацию и другие важные штуки.
Читайте и не забывайте ставить плюсы, если было полезно
Для тех, кто хочет больше, приглашаю на свой YouTube-канал с лекциями про продуктивность и уроками по Figma, Notion, Blender и прочее, и прочее…
#ozontech_habr
Please open Telegram to view this post
VIEW IN TELEGRAM
В шорт-листе Технотекста — конкурсе технических статей от Хабра — снова целая подборка материалов от наших экспертов.
Удивлены ли мы? Отнюдь.
Волнуемся ли? За каждого.
Покажем ли эти статьи? С удовольствием🔥
➡ Администрирование
⚫️ Через реки, через лес прямо к PowerDNS — Максим Пикулев.
➡ Информационная безопасность
⚫️ «Барби»: какие проблемы инфобеза может показать нам Барбиленд — Дарья Мочалова.
⚫️ Как выращивать SOC на корпоративной ферме — Максим Чиненков.
➡ Фронтенд
⚫️ Изнутри: Swift макрос — #Preview — Максим Гришутин.
⚫️ Осознанная оптимизация Compose — Андрей Богомолов.
➡ Менеджмент
⚫️ «А вы точно продакт?» — Денис Соловьёв.
⚫️ D&D как инструмент тимлида: решаем проблемы команды с помощью разговорных ролевых игр — Виктор Корейша.
➡ Дизайн
⚫️ Дорогая, что-то пошло не так. Гид по пустым состояниям и ошибкам + шаблоны на все случаи — Кира Калимулина.
⚫️ Как сделать макеты удобнее для команды — Владимир Крылов.
⚫️ Сам себе заказчик: как мы провели редизайн сервиса и вернули доверие пользователей — Анастасия Тарасова.
➡ Аналитика
⚫️ ClickHouse, Grafana и 3000 графиков. Как построить систему быстрых дашбордов — Валентин Борисов.
⚫️ Шесть причин, почему ваши A/B-тесты не работают — Игорь Моисеев.
➡ AI&ML
⚫️ Два сапога — пара, а три — уже community: как алгоритмы на графах помогают собирать группы товаров — Иван Антипов.
➡ Бэкенд
⚫️ Как департамент утилизации CPU превратился в департамент экономии железа, выдерживающий нагрузку в 1 млн RPS — Мария Ремнёва.
⚫️ Clean Git History, или Тёмная сторона VCS — Мария Петрова.
⚫️ Своё кастомное межсервисное взаимодействие с блекджеком и gRPC — Ильяс Нежибицкий.
⚫️ Производительность базового поиска в Ozon как культурный феномен — Александр Меньшиков.
Побили свой прошлогодний рекорд по числу технотекстовых номинантов в 1,5 раза и считаем важным таким поделиться 😎
#ozontech_habr
Удивлены ли мы? Отнюдь.
Волнуемся ли? За каждого.
Покажем ли эти статьи? С удовольствием🔥
Побили свой прошлогодний рекорд по числу технотекстовых номинантов в 1,5 раза и считаем важным таким поделиться 😎
#ozontech_habr
Please open Telegram to view this post
VIEW IN TELEGRAM
Это не ваша память мобильного приложения утекла? Проверьте на всякий случай и во имя стабильности 💪🏻
Привет, меня зовут Ира Бабаева. Я руковожу отделом тестирования мобильной платформы. Однажды в проекте мобильного приложения продавцов у нас джоба начала отваливаться по таймауту. Одной из гипотез было наличие утечек памяти. Проблема была в другом, но в ходе работы над этой задачей я поняла, что мне есть чем поделиться с QA-инженерами: в статье рассказываю о том, почему важно уделять внимание вопросам стабильности приложения и как своевременно обнаруживать утечки памяти.
Меняю накопленные знания в статье на сердечки и плюсы на Хабре 💙
#ozontech_habr
Привет, меня зовут Ира Бабаева. Я руковожу отделом тестирования мобильной платформы. Однажды в проекте мобильного приложения продавцов у нас джоба начала отваливаться по таймауту. Одной из гипотез было наличие утечек памяти. Проблема была в другом, но в ходе работы над этой задачей я поняла, что мне есть чем поделиться с QA-инженерами: в статье рассказываю о том, почему важно уделять внимание вопросам стабильности приложения и как своевременно обнаруживать утечки памяти.
Меняю накопленные знания в статье на сердечки и плюсы на Хабре 💙
#ozontech_habr