Пример: хочу в БД хранить массив JSON'ов вместо одного JSON'а, аналогичные конструкции записывать в БД, это используют 20 потребителей через вычитку из БД.
В микросервисах обычно не позволяют кому-попало в базу лезть своими руками немытыми.
У сервиса есть контракт с его потребителем, и он должен его соблюдать. способ хранения данных - часть внутренней кухни сервиса.
Как делать хотфикс, если функционал из убежавшего вперед мастера еще не должен быть выпущен? Аналогично Git Flow?
тут есть несколько разных способов.
делать по аналогии с git-flow
идти в сторону ci\cd: фиксить мастер и катить уже его.
Второй подход больше отражает суть TBD - которая приводит нас к чистому мастеру, готовому к релизу в любой момент. И возможность быстро доставлять ценность клиенту
почему одни и те же фичи в TBD — короткоживущие, добавляющие TTM, а в gitflow — порождающие тонны конфликтов?
Далеко не все фичи это 1-3 дня разработки. Как правило времени на реализацию и тестирование тратится существенно больше. (хот-фиксы и перекрашивание кнопок не берем)
Потому - подход TBD позволяет выкатить фичу в прод под флагом. И застолбить под нее место. Обозначить интерфейсы. Другие команды будут видеть код, что под фича-флагами. Будут понимать - что разработка в этом месте ведется и будут это учитывать.
В случае-же git-flow, чем дольше фича не попадает в master будет находится тем дольше и чаще надо будет решать конфликты. Тем больше шансов что появится костыльная дублирующая реализация.
Плюс code review в gitflow легче
Тут термин "легче" штука относительная. И про это я в статье тоже писал.
Отревьювить и дать грамотный фидбек на 50 строк изменений проще и быстрее, чем при 1000 строк изменений.
Но при этом требуется держать контекст предыдущих итераций.
Мое опыт говорит, что опытный разработчик имеющий понимание фичи - достаточно легко справится с поддержанием контекста от итерации к итерации. При этом времени на ревью итерации он тратить сильно не много (итерация маленькая) Ревью будет более качественным (мы когда-то даже статистику строили - зависимость времени ревью от размера PR)
А вот для новичка держать контекст прошлой итерации очень сложно, потому - ему поще делать фичу целиком
Ну и если кратко - если ты позвонил на подменный номер, и позвонишь на него-же завтра - ты точно так-же дозвонишься до продавца. (при условии что оба звонка у тебя идут с одного и того-же телефона)
Если звонил вчера со своего телефона а сегодня перезваниваешь с телефона жены - есть риск не дозвонится.
Лишь подсвечиваю - что мест, которым человек передает свои перс данные море. И та-же запись к парикмахеру через интернет - это тонна метрик + ваш телефон + частота визитов + геолокация + данные с карточки при оплате. Многие сетевые заведения так делают.
И шанс утечки\продажи ваших данных от парикмахера мне видится более высоким, чем у того-же Авито.
Поэтому - оценивая риски, оценивать стоит комплексно. К примеру - какой смысл переживать о том, что из Авито данные утекут, когда они утекают из Я.Еды, или когда паспорт утекает из чатов Тинкофф.
Грубо-говоря - единственный способ предотвратить утечку данных - это не отдавать их вообще никому.
Но в современном обществе это уже выглядит невозможным (пример банального парикмахера выше - он уже знает ТУЧУ всего)
Но это сейчас общий разговор.
Касательно подменного номера:
запись переговоров - ... не является необходимым для площадки
Это необходимо, для поднятия уровня безопасности на площадке.
Подменный номер используем, чтобы убрать мошеннические звонки продавцам. По нашим исследованиям - их все еще очень много. И это один из способов защиты продавцов.
почему вы для всех лотов не оставляете только вариант продажи через Авито-доставку
Такой объем сделок в текущем виде логистика не потянет, вроде это лежит на поверхности.
Мы так-же понимаем, что основная аудитория Авито - это частник-частник, и цели ликвидировать это направление у нас нет (зачем оно нам). Но постараться сделать его цивилизованее и безопаснее мы хотим.
Аналогия такая - был рынок, куда приходили покупатели и продавцы. Пока рынок был небольшим - все было в порядке.
Когда рынок стал огромным - там стали сплошь и рядом сновать кидалы, продавать паль, и откровенно обманывать.
На рынке появились к примеру контрольные весы (и тут-же часть людей начало жаловаться - что у них есть они и так есть, и контрольные не нужны, и вообще - весы только про вес, и объему не помогают)
На рынке появились централизованная служба носильщиков (вместо шныряющих сомнительных людей, что зачастую брали деньги и товар, и свалилвали в закат), и рекомендации пользоваться именно ими (с запретом публично предлагать такие услуги на рынке) и снова часть людей начало жаловаться - что цена то на службу носильщиков стала повыше, и вообще они не нужны. Правда теперь случае когда носильщик убегает с товаром стало в 1000 раз меньше.
итд
Все это делает рынок цивилизованее, спокойнее и безопаснее.
И Важно сказать - что Авито не хочет стрелять себе в ногу. Все изменения тщательно проверяют на цифрах, данных, общих реакциях пользователей. И пока динамика только положительная.
Можно считать - любые данные предоставленные в сеть заранее утекшими.
Такой подход имеет место быть, и знаю людей кто всерьез так и делает.
Можно пойти дальше - отказаться от услуг мобильного телефона, мессенджеров, соц-сетей, банков, магазинов в сети, служб доставок, скидочных карт магазинов и не ездить на машине. Везде есть связь фотки, паспорта, карточки или телефона.
Если у той 100ни возникли проблемы, им точно стоит написать в поддержку. Насколько мне известно - компенсации случались, когда понимали - что проблема была именно в зоне ответственности Авито.
Мы тоже так решили. и попробовали. Но так не сработало.
Когда оно опционально - люди видя пометку скрытый номер - решали что это мошенничество. В итоге продавцам фича больше мешала
мы провели эксперимент с принудительным включением фичи в ряде регионов. Эксперимент оказался удачным повсеместно. Никакого негативного эффекта ни у продавцов ни у покупателей, за пределами стат. погрешностей.
эмм… «или вы даете проверять людям то-то и так-то, или мы с вами не работаем», в чем проблема?
моя трактовка такого диалога примерно такая (не владею информацией про это, просто фантазирую)
"долгая проверка увеличит нагрузку на пункт выдачи. значит обслужить могут не всех. в общем х10 от изначальной цены или можете и дальше с нами не работать. Ах-да, у нас в 70% точек выдачи помещение 2*2, потому вам нужно еще выкупить для нас\у нас доп площадь."
При этом - возможность проверки не означает что продавец становится защищеннее. То есть нужно оборудовать достаточное количество света, камеры, централизованный сбор видео с распаковкой и проверкой. И все это на мощностях "партнеров" что в общем-то готовы просить за установку камеры к примеру х30 от ее цены-)
Это приводит к увеличению стоимости логистики, и жалобам - "Авито жадные, доставка дорогая".
В общем бизнес-модель не сходится. И количество доступных пунктов выдачи сокращается в разы.
В том числе поэтому сейчас пробуем делать свои пункты выдачи.
Выглядит навязчиво, это так. Думаю что мы сможем подумать и над частотой уведомлений.
Что-же касается "новичков" и "профи"
думаю что правила поведения все-же должны быть общими для всех
в качестве привилегий за долгий срок - это и накопленные положительные отзывы в профиле, и старая дата регистрации аккаунта: это повышает к вам доверие, как "своему человеку" на площадке
объем настроек, уведомлений, защиты для повер пользователей - интересное направление. Для проффесионалов - есть отдельные продвинутые интерфейсы, но это прямо платно. и для продажи скажем носков - они абсолютно излишни. Но возможно будет полезен и промежуточный вариант. Попробуйте описать набор фич, что бы вам, как повер-юзеру, хотелось бы видеть
Большинство обычных пользователей даже не думает о безопаснности. То есть именно ощущение защищенности у них примерно одинаковое - что в ватсапп, что в чате Авито. А значит и поведение одинаковое.
При этом вариантом скама мы ловим у себя достаточно много.что все-таки уменьшает, и по нашим данным значительно, количество скама.
Это вполне себе объективные цифры, можете принять это как факт.
Любая защита ДОГОНЯЕТ, а не опережает способы обмана
Тут не совсем так. У нас отдельная большая и очень крутая команда сейчас постоянно мониторит все случаи скама. И адаптирует механизмы защиты под них.То есть скорость внедрения защиты высокая. И она ЯВНО выше, чем скорость адаптации людей к ним
Условно - появление нового способа скама позволит обмануть 100 людей, прежде чем будет закрыта. При этом в ватсапп подобная схема позволит обмануть 100к людей, прежде чем появится достаточный общественный резонанс, чтобы способ перестал работать.
Но количество и вариативность фич в Авито просто невероятно дикая. Даже когда у вас 10 тогглов - нужно тестировать и около 1000 комбинаций. У нас фич гораздо больше. А их и поддерживать надо. В общем - если тогглы не спиливать - то стоимость поддержки растет геометрически.
Второй момент - нам точно не хочется, чтобы профиль и настройки пользователя были похожи на космолет. Интерфейс должен быть лаконичным и понятным. Настройки тоже.
Третий момент - мы в процессе экспериментов проверяли и вариант с опциональностью. Выходило плохо - те кто включал фичу - выглядели откровенными мошенниками, которые что-то скрывали и прятались. Если же включить фичу на всех - эффект менялся полностью. Люди переставали воспринимать это как попытку спрятаться, быстро адаптировались - что такое у всех.
В общем - это очень поверхностный рассказ о том, почему фича выглядит именно так. Это не решение из разряда "позлить" пользователей. Мы стараемся все свои гипотезы проверять на данных.
Это пример, не связанный с подменный номером. А мы все-же стараемся статью обсуждать.
Приведите пожалуйста пример, именно в контексте подменного номера? ну и не забудьте - пример того КАК НАДО. Правда хочется понять - как бы вы видели реализацию такой фичи
это должно быть доступно в ЛЮБОМ ПВЗ
Да, неплохо бы иметь такое во всех ПВЗ. Абсолютно так. Но влияние на чужие ПВЗ сильно ограничены. Но направление мысли верное. И статьями выше - хотел вам показать, что над этим также работаем.
И открытие своих физических ПВЗ - так-же направлено, в том числе, на улучшение безопасности совершения сделок на платформе.
Это приоритетное направление, необходимое для роста Авито
В микросервисах обычно не позволяют кому-попало в базу лезть своими руками немытыми.
У сервиса есть контракт с его потребителем, и он должен его соблюдать. способ хранения данных - часть внутренней кухни сервиса.
тут есть несколько разных способов.
делать по аналогии с git-flow
идти в сторону ci\cd: фиксить мастер и катить уже его.
Второй подход больше отражает суть TBD - которая приводит нас к чистому мастеру, готовому к релизу в любой момент. И возможность быстро доставлять ценность клиенту
За одно это с меня пиво!
Ух. Спасибо за комент. Мне прямо нравится!
Далеко не все фичи это 1-3 дня разработки. Как правило времени на реализацию и тестирование тратится существенно больше. (хот-фиксы и перекрашивание кнопок не берем)
Потому - подход TBD позволяет выкатить фичу в прод под флагом. И застолбить под нее место. Обозначить интерфейсы. Другие команды будут видеть код, что под фича-флагами. Будут понимать - что разработка в этом месте ведется и будут это учитывать.
В случае-же git-flow, чем дольше фича не попадает в master будет находится тем дольше и чаще надо будет решать конфликты. Тем больше шансов что появится костыльная дублирующая реализация.
Тут термин "легче" штука относительная. И про это я в статье тоже писал.
Отревьювить и дать грамотный фидбек на 50 строк изменений проще и быстрее, чем при 1000 строк изменений.
Но при этом требуется держать контекст предыдущих итераций.
Мое опыт говорит, что опытный разработчик имеющий понимание фичи - достаточно легко справится с поддержанием контекста от итерации к итерации. При этом времени на ревью итерации он тратить сильно не много (итерация маленькая) Ревью будет более качественным (мы когда-то даже статистику строили - зависимость времени ревью от размера PR)
А вот для новичка держать контекст прошлой итерации очень сложно, потому - ему поще делать фичу целиком
Согласный!
Больше скажу - факторов влияющих на скорость просто огромное количество.
Но отделить импакт каждого из этих факторов крайне-сложно.
Но что могу точно сказать - влияние именно TBD достаточно большое, и без него результаты точно были бы хуже.
Начал отвечать, но осознал, что понятие "конфликт фич" можно понимать по-разному.
Будет здорово, если уточнишь
Спасибо. Поправлю. Изначально использовал TBD акроним, но сказали не понятно_)
Привет.
Ты путаешь звонки через приложение и звонки через защищенный номер
Подробнее про это мы писали в этой статье https://habr.com/ru/company/avito/blog/665436/
Ну и если кратко - если ты позвонил на подменный номер, и позвонишь на него-же завтра - ты точно так-же дозвонишься до продавца. (при условии что оба звонка у тебя идут с одного и того-же телефона)
Если звонил вчера со своего телефона а сегодня перезваниваешь с телефона жены - есть риск не дозвонится.
какой период а оценки? как часто можно промоутится и менять грейды?
Есть ли какой-то механизм балансировки - за неверно поднятый грейд?
Вообще? или только в первый раз?
оценка - это средне-арифметическое между мнением тимлида и самооценкой?
или результат торга, если оценка не сошлась
и в свете этого интересно
Как быть, если мнение инженера и тим-лида не сошлось. Более того - оно падает
Поверьте - сарказма нет.
Лишь подсвечиваю - что мест, которым человек передает свои перс данные море. И та-же запись к парикмахеру через интернет - это тонна метрик + ваш телефон + частота визитов + геолокация + данные с карточки при оплате. Многие сетевые заведения так делают.
И шанс утечки\продажи ваших данных от парикмахера мне видится более высоким, чем у того-же Авито.
Поэтому - оценивая риски, оценивать стоит комплексно. К примеру - какой смысл переживать о том, что из Авито данные утекут, когда они утекают из Я.Еды, или когда паспорт утекает из чатов Тинкофф.
Грубо-говоря - единственный способ предотвратить утечку данных - это не отдавать их вообще никому.
Но в современном обществе это уже выглядит невозможным (пример банального парикмахера выше - он уже знает ТУЧУ всего)
Но это сейчас общий разговор.
Касательно подменного номера:
Это необходимо, для поднятия уровня безопасности на площадке.
Подменный номер используем, чтобы убрать мошеннические звонки продавцам. По нашим исследованиям - их все еще очень много. И это один из способов защиты продавцов.
Какой аргумент позволит вам убедится, что Авито, добавляя подменный номер, фокусируется именно на безопасности?
Такой объем сделок в текущем виде логистика не потянет, вроде это лежит на поверхности.
Мы так-же понимаем, что основная аудитория Авито - это частник-частник, и цели ликвидировать это направление у нас нет (зачем оно нам). Но постараться сделать его цивилизованее и безопаснее мы хотим.
Аналогия такая - был рынок, куда приходили покупатели и продавцы. Пока рынок был небольшим - все было в порядке.
Когда рынок стал огромным - там стали сплошь и рядом сновать кидалы, продавать паль, и откровенно обманывать.
На рынке появились к примеру контрольные весы (и тут-же часть людей начало жаловаться - что у них есть они и так есть, и контрольные не нужны, и вообще - весы только про вес, и объему не помогают)
На рынке появились централизованная служба носильщиков (вместо шныряющих сомнительных людей, что зачастую брали деньги и товар, и свалилвали в закат), и рекомендации пользоваться именно ими (с запретом публично предлагать такие услуги на рынке) и снова часть людей начало жаловаться - что цена то на службу носильщиков стала повыше, и вообще они не нужны. Правда теперь случае когда носильщик убегает с товаром стало в 1000 раз меньше.
итд
Все это делает рынок цивилизованее, спокойнее и безопаснее.
И Важно сказать - что Авито не хочет стрелять себе в ногу. Все изменения тщательно проверяют на цифрах, данных, общих реакциях пользователей. И пока динамика только положительная.
Можно считать - любые данные предоставленные в сеть заранее утекшими.
Такой подход имеет место быть, и знаю людей кто всерьез так и делает.
Можно пойти дальше - отказаться от услуг мобильного телефона, мессенджеров, соц-сетей, банков, магазинов в сети, служб доставок, скидочных карт магазинов и не ездить на машине. Везде есть связь фотки, паспорта, карточки или телефона.
Но такой подход уже пахнет цифровым луддизмом =(
Если у той 100ни возникли проблемы, им точно стоит написать в поддержку. Насколько мне известно - компенсации случались, когда понимали - что проблема была именно в зоне ответственности Авито.
Мы тоже так решили. и попробовали. Но так не сработало.
Когда оно опционально - люди видя пометку скрытый номер - решали что это мошенничество. В итоге продавцам фича больше мешала
мы провели эксперимент с принудительным включением фичи в ряде регионов. Эксперимент оказался удачным повсеместно. Никакого негативного эффекта ни у продавцов ни у покупателей, за пределами стат. погрешностей.
моя трактовка такого диалога примерно такая (не владею информацией про это, просто фантазирую)
"долгая проверка увеличит нагрузку на пункт выдачи. значит обслужить могут не всех. в общем х10 от изначальной цены или можете и дальше с нами не работать. Ах-да, у нас в 70% точек выдачи помещение 2*2, потому вам нужно еще выкупить для нас\у нас доп площадь."
При этом - возможность проверки не означает что продавец становится защищеннее. То есть нужно оборудовать достаточное количество света, камеры, централизованный сбор видео с распаковкой и проверкой. И все это на мощностях "партнеров" что в общем-то готовы просить за установку камеры к примеру х30 от ее цены-)
Это приводит к увеличению стоимости логистики, и жалобам - "Авито жадные, доставка дорогая".
В общем бизнес-модель не сходится. И количество доступных пунктов выдачи сокращается в разы.
В том числе поэтому сейчас пробуем делать свои пункты выдачи.
Спасибо за примеры!
Выглядит навязчиво, это так. Думаю что мы сможем подумать и над частотой уведомлений.
Что-же касается "новичков" и "профи"
думаю что правила поведения все-же должны быть общими для всех
в качестве привилегий за долгий срок - это и накопленные положительные отзывы в профиле, и старая дата регистрации аккаунта: это повышает к вам доверие, как "своему человеку" на площадке
объем настроек, уведомлений, защиты для повер пользователей - интересное направление. Для проффесионалов - есть отдельные продвинутые интерфейсы, но это прямо платно. и для продажи скажем носков - они абсолютно излишни. Но возможно будет полезен и промежуточный вариант. Попробуйте описать набор фич, что бы вам, как повер-юзеру, хотелось бы видеть
Перечитал несколько раз.
Ваш основной посыл - ложное чувство защищенности.
Большинство обычных пользователей даже не думает о безопаснности. То есть именно ощущение защищенности у них примерно одинаковое - что в ватсапп, что в чате Авито. А значит и поведение одинаковое.
При этом вариантом скама мы ловим у себя достаточно много.что все-таки уменьшает, и по нашим данным значительно, количество скама.
Это вполне себе объективные цифры, можете принять это как факт.
Тут не совсем так. У нас отдельная большая и очень крутая команда сейчас постоянно мониторит все случаи скама. И адаптирует механизмы защиты под них.То есть скорость внедрения защиты высокая. И она ЯВНО выше, чем скорость адаптации людей к ним
Условно - появление нового способа скама позволит обмануть 100 людей, прежде чем будет закрыта. При этом в ватсапп подобная схема позволит обмануть 100к людей, прежде чем появится достаточный общественный резонанс, чтобы способ перестал работать.
Нет, прекрасно понял.
Тоже так делаем с тогглами.
Но количество и вариативность фич в Авито просто невероятно дикая. Даже когда у вас 10 тогглов - нужно тестировать и около 1000 комбинаций. У нас фич гораздо больше. А их и поддерживать надо. В общем - если тогглы не спиливать - то стоимость поддержки растет геометрически.
Второй момент - нам точно не хочется, чтобы профиль и настройки пользователя были похожи на космолет. Интерфейс должен быть лаконичным и понятным. Настройки тоже.
Третий момент - мы в процессе экспериментов проверяли и вариант с опциональностью. Выходило плохо - те кто включал фичу - выглядели откровенными мошенниками, которые что-то скрывали и прятались. Если же включить фичу на всех - эффект менялся полностью. Люди переставали воспринимать это как попытку спрятаться, быстро адаптировались - что такое у всех.
В общем - это очень поверхностный рассказ о том, почему фича выглядит именно так. Это не решение из разряда "позлить" пользователей. Мы стараемся все свои гипотезы проверять на данных.
Это пример, не связанный с подменный номером. А мы все-же стараемся статью обсуждать.
Приведите пожалуйста пример, именно в контексте подменного номера? ну и не забудьте - пример того КАК НАДО. Правда хочется понять - как бы вы видели реализацию такой фичи
Да, неплохо бы иметь такое во всех ПВЗ. Абсолютно так. Но влияние на чужие ПВЗ сильно ограничены. Но направление мысли верное. И статьями выше - хотел вам показать, что над этим также работаем.
И открытие своих физических ПВЗ - так-же направлено, в том числе, на улучшение безопасности совершения сделок на платформе.
Это приоритетное направление, необходимое для роста Авито
Вы уверены в этом?
Это не размеченный датасет с сомнительным качеством звукового потока.
Обучать без разметки на таком - не имеет смысла. Размечать дорого.
Пробовал поискать в гугле - продажу не размеченных датасетов - и что-то нет ни предложений к покупке ни к продаже.
Собственно подвожу что вы заблуждаетесь, в том - насколько это ценно.
Ну и напрасно обесцениваете вклад фичи в безопасность работы площадки.
Выше писали - важно понимать на чем компания зарабатывает. Авито зарабатывает не на продаже данных, а на е-комерс платформе.
И чем больше пользователей безопасно торгует: покупает/продает тем выше прибыль компании.