Как стать автором
Обновить
41
0
Yulia Kovaleva @apostteriori

Head of DevRel @ Uzum

Отправить сообщение

Анализ синтаксиса, который всегда с тобой

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

Всем привет, меня зовут Денис Лимарев, я разработчик платежной системы Delivery Club. И сегодня я расскажу, как мне надоели однообразные ошибки и собственная невнимательность, и как я с этим борюсь. Недавно я написал статью о нашем линтере, где вскользь затрагивал возможность написания локальных проверок под конкретный проект. Сегодня раскрою эту тему подробнее и опишу приемы, упрощающие проверку кода мне и коллегам. А в конце статьи расскажу, как можно автоматизировать некоторые проверки ИБ из нашей недавней статьи, поделюсь дальнейшими планами по развитию по развитию и оставлю ссылку на доклад автора go-ruleguard (далее ruleguard).

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

Проверяем защищённость приложения на Go: с чего начать

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

Привет! Меня зовут Александра, я инженер по информационной безопасности в Delivery Club. Мы используем Go в качестве основного языка для разработки Web-API и представляем вашему вниманию краткое руководство по быстрой проверке сервиса на соответствие базовым требованиям безопасности. Представленную ниже информацию можно адаптировать под проекты, написанные и на других языках.

Читать далее
Всего голосов 22: ↑16 и ↓6+14
Комментарии7

Module Federation: простая загрузка динамических модулей

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

Всем привет! Меня зовут Евгений, я работаю frontend-разработчиком в платформенной команде. Моя задача — помогать другим frontend-разработчикам выполнять их задачи эффективнее. Мы в Delivery Club больше года назад внедрили подход с микрофронтендами, о чём писали здесь. Вы можете найти и много других статей с описанием этого подхода.

После выхода стабильной версии Webpack 5 мы решили использовать плагин Module Federation в качестве основного способа загрузки микрофронтендов. В этой статье расскажу, с какой проблемой столкнулся при загрузке динамических модулей и как её решил. Описывать будут на примере плагина Module Federation во всех деталях. Если вы слышите про этот инструмент впервые, то советую предварительно ознакомиться.

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

Эволюция рекомендаций ресторанов в Delivery Club. Часть 1

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

Всем привет! Меня зовут Иван Максимов, я работаю Lead Data Scientist’ом в команде рекомендаций и A/B-тестирования Delivery Club. Это первая из серии статей про нашу рекомендательную систему. Я расскажу о том, как мы определили проблемы предыдущего подхода к рекомендациям, и как начали строить новый: с оптимизацией рекомендаций сразу под несколько бизнес-метрик. 

Статья будет интересна data scientist’ам и менеджерам продуктов, которые хотят с нуля построить систему рекомендации контента.

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

Работа и коммуникации на удалёнке. Как это делать эффективно

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

Меня зовут Азаренко Михаил и я работаю удалённо уже 10 лет (начал ещё до того, как это стало мейнстримом). В этой статье поделюсь своим опытом и видением о работе с командой и психологическом аспекте работы в 4-х стенах. Конечно же, мой личный опыт будет через призму работы из дома и на должности управляющего владельца. Поехали.

Читать далее
Всего голосов 6: ↑2 и ↓4-2
Комментарии4

Objectives and Key Results: инструкция по применению

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

Всем привет! Меня зовут Егор Толстой, я руковожу кластером App Platform в Авито. Мои команды в основном занимаются разработкой внутренних продуктов, инструментов и процессов — тем, что принято называть платформенной разработкой.


Год назад я рассказывал в этом блоге, как мы внедрили и используем performance review. Тогда я упоминал, что мы смотрим на него как на индикатор пользы, которую приносит компании каждый отдельный человек. Понимать это важно и полезно. Это помогает ответить на вопрос «насколько Вася молодец по сравнению с Петей?» и определить, какую премию кому выплатить. Но когда мы переходим на уровень команд, всё становится сильно интереснее. Здесь важно оценить конкретный результат команды и его влияние на успех компании. Высокое среднее значение перфоманса всех членов команды совсем необязательно значит, что команда достигла крутых результатов. Какая-то корреляция точно присутствует, но для оценки фактического вклада команды в успех компании этот инструмент использовать нельзя.


Для решения этой и ряда других проблем мы в Авито используем метод OKR — Objectives and Key Results. Он позволяет установить дерево понятных и легко измеримых целей во всей компании, связать результаты различных команд друг с другом и добиться достижения желаемых результатов.


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


Читать дальше →
Всего голосов 22: ↑21 и ↓1+20
Комментарии6

Как устроено A/B-тестирование в Авито

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

Всем привет. Меня зовут Данила, я работаю в команде, которая развивает аналитическую инфраструктуру в Авито. Центральное место в этой инфраструктуре занимает А/B-тестирование.


А/B эксперименты — ключевой инструмент принятия решений в Авито. В нашем цикле продуктовой разработки А/B-тест является обязательным этапом. Мы проверяем каждую гипотезу и выкатываем только позитивные изменения.


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


Читать дальше →
Всего голосов 53: ↑48 и ↓5+43
Комментарии35

Как устроено сплит-тестирование в Badoo

Время на прочтение18 мин
Количество просмотров26K
Если в Google ввести запрос «a b тестирование», то по теме выпадает довольно много статей, но в них больше теории и ориентированы они на менеджеров, а в качестве инструментов предлагаются готовые клиентские реализации, вроде Google Analytics. Также есть статья про очень простую серверную реализацию (в реалиях авторов, я думаю, этого вполне достаточно).

Сегодня я расскажу о том, как это происходит у нас, в Badoo, при огромном количестве пользователей по всему миру.

У нас был целый «зоопарк» инструментов для сплит-тестирования во главе с A/B фрэймворком, часть из которых разрабатывалась для других целей. Помимо прочих недостатков, все эти инструменты использовали примерно один и тот же способ для разделения пользователей на варианты — это хеширование ID пользователя плюс «соль». Такой подход нас не удовлетворял, и было принято решение разработать новую версию, в которой можно было бы избежать недостатков старых версий.
Читать дальше →
Всего голосов 33: ↑30 и ↓3+27
Комментарии25
Всего голосов 24: ↑20 и ↓4+33
Комментарии21

IT-валентинка: 53 способа признаться в любви

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

Однажды на Zoom-созвоне нашей команды нить дискуссии ушла за пределы планируемого. На удаленке такое часто случается, потому что всем не хватает обычного «кухонного» общения в офисе. Разговор начался с итальянской книги, где на всех языках мира написано «Я тебя люблю». Потом были возражения, что языки программирования тоже языки, почему их там нет??? Затем мы вспомнили, что не за горами День всех влюбленных. Так мы придумали, как сделать ремейк этой книги на свой лад, а заодно вспомнить про свежий рейтинг языков программирования от IEEE.

Книгу мы выпустили небольшим тиражом, а в этом посте публикуем ее содержание: признания в любви на 53 самых популярных языках программирования. А в качестве бонуса предлагаем краткое описание каждого из них.
Читать дальше →
Всего голосов 17: ↑13 и ↓4+24
Комментарии24

Автоматизация оптимизаций в Go

Время на прочтение4 мин
Количество просмотров8.2K
image

Привет, Хабр! Меня зовут Денис Лимарев, я разработчик платежной системы в Delivery Club.
Недавно мы провели два митапа: по оптимизациям и по нашему новому линтеру. На первом митапе разобрали оптимизации кода на Go, а в рамках второго поговорили про создание и возможности нашего нового линтера, который может искать и самостоятельно применять эти оптимизации, и не только. Как делался линтер и поиск каких оптимизаций смогли автоматизировать — читайте под катом.
Читать дальше →
Всего голосов 17: ↑16 и ↓1+21
Комментарии1

Код ревью с учётом человеческих слабостей

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

Проверка кода (code review) — отличный инструмент для повышения качества кода, но он не учитывает один факт: отправляют и просматривают код люди, а они устают, теряют сосредоточенность, ленятся, да и просто испытывают эмоции в самые неожиданные моменты.

Поэтому хочу представить свое видение хороших и плохих практик код ревью с учётом человеческих особенностей.

Читать далее
Всего голосов 24: ↑22 и ↓2+23
Комментарии7

Реверс уязвимого приложения от Delivery Club: результаты конкурса

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

Привет! Меня зовут Илья Сафронов, я руковожу направлением информационной безопасности Delivery Club. Третьего дня мы запустили конкурс по реверсу и поиску уязвимости в тестовом Android-приложении. Целью было выполнение кода на бэкенде (RCE). За время конкурса APK скачали более 400 раз, а сломали всего два раза, Hall of Fame можно посмотреть на странице скачивания.

Теперь настало время рассказать, в чём заключалась задача и как её решать. Один из победителей — @D3fl4t3 — прислал нам отличный отчёт, его мы и представляем вашему вниманию.

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

Результаты исследования рынка Developer Relations в РФ и СНГ: Лето 2021

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

Я занимаюсь Developer Relations уже шестой год. Профессия новая. Мне очень хотелось увидеть российский деврел в полном объеме: поискать не только ответы, но и сформулировать новые вопросы в нашей индустрии. Откуда в неё приходят, как развиваются, с какими сложностями сталкиваются? Поэтому я провела исследование, в котором участвовали 77 специалистов по Developer Relations. Планирую его повторять ежегодно.

Читать далее
Всего голосов 43: ↑40 и ↓3+53
Комментарии19

Как назначить самого подходящего курьера: наша скоринговая модель

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


Всем привет! Меня зовут Михаил Моловцев, и я алкоголик операционный аналитик в Delivery Club. Наша команда помогает бизнесу и разработке в процессах и исследованиях, связанных с курьерами и доставкой заказов. Я занимаюсь исследованиями систем назначений заказов, прогнозированием времени доставки и курьерскими скорингами. Расскажу о том, как мы обновили подход к скорингу курьеров для системы назначения заказов.

Немного о скоринге


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

У вас могут возникать разные задачи по категоризации пользователей. Например, определять клиентов с высокой лояльностью к сервису, или клиентов, которые точно смогут вернуть кредит, и т.д. То есть нужно будет вычислять степень соответствия каждого клиента той или иной категории.
Читать дальше →
Всего голосов 6: ↑6 и ↓0+6
Комментарии5

Единая система мониторинга и оповещений BI: правда или вымысел?

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


Привет, Хабр! Мы, Юлия Лузганова HiJulia и Наталия Прудникова balzaant, аналитики в команде Business Intelligence Delivery Club. Наш департамент аналитики стремительно вырос за последние полтора года, сейчас в нем 50 человек и десятки различных проектов. Мы в группе BI-аналитики помогаем пользователям получать чистые и актуальные данные. Например, количество заказов, работающие рестораны и время доставки заказов — одни из главных сущностей. Наша основная задача — своевременная и бесперебойная поставка данных в аналитическое хранилище и их подготовка к дальнейшему использованию. Для этого нам необходимо оперативно выявлять проблемы с загрузкой и обработкой информации.

В этой статье мы хотели бы рассказать о создании мониторинга и системы “near real-time” оповещений. С технической точки зрения реализация простая, а вот нервных клеток разработчиков DWH, BI и пользователей после внедрения сохранено бесконечно много.

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

В статье вы найдете заметки, которые помогут вам реализовать подобную систему, а также идеи для автоматических оповещений. Также расскажем, как используя логи задач и немного статистики, мы выявляем аномалии в работе процессов.
Читать дальше →
Всего голосов 11: ↑11 и ↓0+11
Комментарии1

Сверстать всех наверх: онбординг новых сотрудников

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

Как адаптировать нового сотрудника компании с момента его выхода на работу и до осознания того, что он стал полноценным членом коллектива, понимающим местные культурные и профессиональные ценности? Об этом рассказал direction lead в Lamoda Александр Афенов в своем докладе на TeamLead Conf 2020. За десять лет стажа в IT он неоднократно собирал команды с нуля, и вывел для себя набор полезных в онбординге практик.

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

Читать далее
Всего голосов 20: ↑18 и ↓2+26
Комментарии5

Как провести онлайн-конференцию на 2 000 участников, даже если ты болеешь коронавирусом

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

Привет! Я уже рассказывала про BeeTech 2021, вот и вот ссылки на посты с видео с конференции. Сегодня о том, как мы подготовили этот масштабный ивент. Наш опыт может быть полезен HR-специалистам, начинающим деврелам и разработчикам, которые хотят провести свою конференцию.

Скажу сразу, что мероприятие далось нам нелегко. Конфа несколько раз переносилась из-за пандемии, менялся формат и список спикеров, да еще и в самый разгар подготовки и  момент проведения я заболела ковидом. Но всё-таки мы это сделали. Провели 3 стрима, на которых суммарно собрали около 2 000 зрителей, представили 21 доклад, организовали 3 панельные дискуссии и розыгрыш призов. И все это за один день!

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

Го делать конференцию
Всего голосов 15: ↑13 и ↓2+12
Комментарии5

Геопространственное моделирование с применением методов машинного обучения

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


Всем привет! Меня зовут Константин Измайлов, я руководитель направления Data Science в Delivery Club. Мы работаем над многочисленными интересными и сложными задачами: от формирования классических аналитических отчетов до построения рекомендательных моделей в ленте приложения.

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

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

Статья написана по мотивам выступления с Евгением Макиным на конференции Highload++ Весна 2021. Для тех, кто любит видео, — ищите его в конце статьи.
Всего голосов 30: ↑30 и ↓0+30
Комментарии10

We need to go deeper: как пасхалка в приложении Delivery Club сократила субъективное время ожидания еды

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


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

В декабре у нашего разработчика Александра Верестникова возникла идея интегрировать в приложение тайм-киллер — игру-пасхалку, в которую пользователь мог бы поиграть, пока ждёт заказ. Игрушка позволила бы сократить субъективное время ожидания заказа, а тот факт, что её как будто сложно найти, добавил бы происходящему таинственности. Саша зацепил этой идеей другого разработчика, Сахея Игнатьева. И они принялись за работу. После недолгих обсуждений выбор пал на змейку.
Читать дальше →
Всего голосов 27: ↑19 и ↓8+22
Комментарии7

Информация

В рейтинге
Не участвует
Работает в
Зарегистрирована
Активность

Специализация

DevRel
Lead