Когда микросервисы взаимодействуют через асинхронный обмен сообщениями, возникает задача обеспечения нужной степени надёжности и скорости работы системы.
Павел Агалецкий, ведущий PaaS-инженер, рассказывает про баланс между простотой разработки, надежности и скорости работы системы.
Об этом — в🗂 статье и в карточках.
#habr_avitotech #статья_avitotech
Павел Агалецкий, ведущий PaaS-инженер, рассказывает про баланс между простотой разработки, надежности и скорости работы системы.
Об этом — в
#habr_avitotech #статья_avitotech
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥15👍5❤1😍1
Таня Чернявская, руководитель продуктовых исследований в направлении транзакций в Авито, показывает, как подготовиться к юзабилити-тестированию.
Наташа Сережникова, старший дизайнер интерфейсов в Авито Услугах, рассказывает о применении брейншторма и методе Уолта Диснея.
Ещё!
31 августа в 19:00 мск Наташа Сережникова вместе с Надей Здоровой из Яндекс Маркета обсудят карьерный рост продуктового дизайнера
Расскажут о ключевых компетенциях и личных моментах роста.
Присоединяйтесь к трансляции
#design_avitotech
Please open Telegram to view this post
VIEW IN TELEGRAM
❤12👍6🔥4⚡1
Не забыли?
31.08 в 18:30 (UTC +4) будет Avito Backend United meetup #7: Долма☄️
Встречаемся в Ереване (или в онлайне), обсуждаем Kubernetes, линтеры, форматтеры и миграции.
Для регистрации на офлайн встречу в Ереване, заходите сюда📍
Чтобы получить напоминание о прямом эфире, регистрируйтесь тут💻
#avitobackendmeetup
31.08 в 18:30 (UTC +4) будет Avito Backend United meetup #7: Долма
Встречаемся в Ереване (или в онлайне), обсуждаем Kubernetes, линтеры, форматтеры и миграции.
Для регистрации на офлайн встречу в Ереване, заходите сюда
Чтобы получить напоминание о прямом эфире, регистрируйтесь тут
#avitobackendmeetup
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥5👌4
Ускорить работу с данными на Go, но избежать эффекта гонок?
В этом помогут примитивы синхронизации.
В новом выпуске avito.code бэкендер Авито Виталий Лихачёв рассказывает, как они работают и, в частности, какой есть альтернативный способ их реализации.
А ещё в этом выпуске Виталий рассмотрел сразу несколько паттернов параллельных вычислений.
Словом, видео, которое нельзя пропустить✔️
#avitocode #avitoteam #видео_avitotech
В этом помогут примитивы синхронизации.
В новом выпуске avito.code бэкендер Авито Виталий Лихачёв рассказывает, как они работают и, в частности, какой есть альтернативный способ их реализации.
А ещё в этом выпуске Виталий рассмотрел сразу несколько паттернов параллельных вычислений.
Словом, видео, которое нельзя пропустить
#avitocode #avitoteam #видео_avitotech
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Паттерны параллельных вычислений в Golang | avito.code
Привет! Это avito.code. Здесь опытные инженеры Авито делятся знаниями и рассказывают про свои рабочие инструменты.
В этом выпуске Виталий Лихачёв https://www.youtube.com/@makeitgit, бэкенд-инженер в команде Authorization Tiger Team, продолжает рассказывать…
В этом выпуске Виталий Лихачёв https://www.youtube.com/@makeitgit, бэкенд-инженер в команде Authorization Tiger Team, продолжает рассказывать…
🔥6👍4❤2👎1
Однажды мы захотели ускорить разработку приложений и уменьшить time to market.
Так мы создали Emcee.
Немного инфы, чтобы понять масштаб:
Наши компонентные тесты на PR суммарно длятся 6 часов: как минимум столько времени их гонял бы один миник с одним симулятором. Фактически же билд проходит за 15 минут🚀
Наши 600 end-to-end XCUI-тестов суммарно идут 41 час. Они запускаются под четырьмя разными версиями iOS, и на деле всё распараллеливается и проходит за 50 минут✔️
В общем, Emcee распределяет задачи так, чтобы ни одна машина не простаивала💻
А про него мы будем рассказывать вот в этом канале.
Так мы создали Emcee.
Немного инфы, чтобы понять масштаб:
Наши компонентные тесты на PR суммарно длятся 6 часов: как минимум столько времени их гонял бы один миник с одним симулятором. Фактически же билд проходит за 15 минут
Наши 600 end-to-end XCUI-тестов суммарно идут 41 час. Они запускаются под четырьмя разными версиями iOS, и на деле всё распараллеливается и проходит за 50 минут
В общем, Emcee распределяет задачи так, чтобы ни одна машина не простаивала
А про него мы будем рассказывать вот в этом канале.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥20❤9👍5
Семейный бюджет — это, конечно, хорошо, но пробовали ли вы когда-нибудь считать бюджет ошибок?
Бюджет ошибок — это допустимое количество ошибок за выбранный период. Мы считаем его, чтобы измерить надёжность приложения, так как отдельные метрики не дают полной картины.
Наш бюджет ошибок — это ситуации, когда микросервис нарушает нефункциональные требования: отдаёт ответ с одним из кодов (400, 500, 503, 504) или отвечает слишком медленно (Latency 100 мс).
Что даёт расчёт бюджета ошибок?
📍Микросервис становится предсказуемым. Например, если указать, что микросервис ответит за 300 мс в 99,9% случаев, то все прочие подключившиеся микросервисы будут ожидать ответ за это время.
А их разработчики смогут писать бизнес-логику с опорой на эти значения.
📍Появляется простор для манёвров. Разработчики могут экспериментировать в рамках бюджета ошибок без риска положить сервис.
А вот почему этого бюджета всё-таки недостаточно, чтобы измерить надёжность, Павел Лакосников, тимлид команды SLA, рассказал в хабрастатье 📖
И поделился другими инструментами, которые совокупно позволяют нам выпускать качественный продукт ✔️
Бюджет ошибок — это допустимое количество ошибок за выбранный период. Мы считаем его, чтобы измерить надёжность приложения, так как отдельные метрики не дают полной картины.
Наш бюджет ошибок — это ситуации, когда микросервис нарушает нефункциональные требования: отдаёт ответ с одним из кодов (400, 500, 503, 504) или отвечает слишком медленно (Latency 100 мс).
Что даёт расчёт бюджета ошибок?
📍Микросервис становится предсказуемым. Например, если указать, что микросервис ответит за 300 мс в 99,9% случаев, то все прочие подключившиеся микросервисы будут ожидать ответ за это время.
А их разработчики смогут писать бизнес-логику с опорой на эти значения.
📍Появляется простор для манёвров. Разработчики могут экспериментировать в рамках бюджета ошибок без риска положить сервис.
А вот почему этого бюджета всё-таки недостаточно, чтобы измерить надёжность, Павел Лакосников, тимлид команды SLA, рассказал в хабрастатье 📖
И поделился другими инструментами, которые совокупно позволяют нам выпускать качественный продукт ✔️
👍23🔥10❤3
Рост в карьере продуктового дизайнера: от стажёра до senior (и немного дальше) — завтра в 19:00 мск! 🕒
В последний день лета поболтаем с Наташей Серёжниковой, старшим дизайнером Авито Услуг, про карьеру, становление и развитие.
О чем поговорим:
🔵 в каких компаниях получили свой первый опыт и когда поняли, что пора идти дальше;
🔵 что помогало почувствовать рост;
🔵 какие навыки развивали на разных этапах карьеры;
И многое другое.
А ещё ответим на ваши вопросы!
Эфир пройдет здесь🛫
Просто разговор двух людей о рабочей жизни. Будет лампово и тепло, берите кружечку чая и присоединяйтесь.
#general_avitotech #design_avitotech
В последний день лета поболтаем с Наташей Серёжниковой, старшим дизайнером Авито Услуг, про карьеру, становление и развитие.
О чем поговорим:
И многое другое.
А ещё ответим на ваши вопросы!
Эфир пройдет здесь
Просто разговор двух людей о рабочей жизни. Будет лампово и тепло, берите кружечку чая и присоединяйтесь.
#general_avitotech #design_avitotech
Please open Telegram to view this post
VIEW IN TELEGRAM
❤11👍4🔥3
Avito Backend United meetup #7: Долма — сегодня! ☄️
Печём гату, разливаем мацони, намываем абрикосы и напоминаем: сбор гостей в 18:00 по местному времени (UTC +4).
Адрес нашей резиденции в Ереване — в письме.
Трансляция начнётся в 18:30 (UTC +4)➡️ здесь ⬅️
Всех ждём!❤️
#avitobackendmeetup
Печём гату, разливаем мацони, намываем абрикосы и напоминаем: сбор гостей в 18:00 по местному времени (UTC +4).
Адрес нашей резиденции в Ереване — в письме.
Трансляция начнётся в 18:30 (UTC +4)
Всех ждём!
#avitobackendmeetup
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥12👍4❤3
Летний гастрольный тур наших спецов закроет техлид юнита — Александра Прокшина.
На Selectel Day Off она расскажет про эффективные коммуникации в состоянии стресса.
Вас ждут реальные кейсы по обсуждениям зарплаты, увольнения, срывов сроков и разных других не всегда приятных разговоров.
А ещё — рекомендации, как сформировать win-win ситуацию в ходе таких разговоров.
Приходите послушать сразу, как перевернёте календарь :)
#avitoteam
На Selectel Day Off она расскажет про эффективные коммуникации в состоянии стресса.
Вас ждут реальные кейсы по обсуждениям зарплаты, увольнения, срывов сроков и разных других не всегда приятных разговоров.
А ещё — рекомендации, как сформировать win-win ситуацию в ходе таких разговоров.
Приходите послушать сразу, как перевернёте календарь :)
#avitoteam
❤15👍6🔥5
Как бы вы спроектировали Авито? ☄️
Примерно такую задачу мы даём на этапе собеседования в секции System Design.
Конечно, с нюансами относительно команды, в которую интервьюируется кандидат.
Ход мыслей по созданию сложных архитектур помогает нам понять вот что:
1️⃣ сможет ли кандидат построить работоспособную архитектуру приложения на основании собранных требований;
2️⃣ умеет ли кандидат взвешивать плюсы и минусы решений, выявлять долгосрочные риски и работать с ними;
3️⃣ сможет ли кандидат участвовать в процессе проектирования в составе кросс-функциональной команды.
Подробнее о том, как проходит секция System Design, + ресурсы для подготовки к ней и несколько лайфхаков для успешного интервью — в статье🗂 нашего фронтенд-инженера Артёма Ермилова.
#frontend_avitotech #habr_avitotech #статья_avitotech
Примерно такую задачу мы даём на этапе собеседования в секции System Design.
Конечно, с нюансами относительно команды, в которую интервьюируется кандидат.
Ход мыслей по созданию сложных архитектур помогает нам понять вот что:
Подробнее о том, как проходит секция System Design, + ресурсы для подготовки к ней и несколько лайфхаков для успешного интервью — в статье
#frontend_avitotech #habr_avitotech #статья_avitotech
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15❤9🔥6😐1
Свежие материалы по бэкенду
🗂 Go's Garbage Collection: как работает и почему это важно знать?
Время чтения: ~7 минут
🗂 Как искать уязвимости в проекте на Go: обзор популярных анализаторов кода и их возможностей
Время чтения: ~8 минут
🗂 Сравниваем скорость и оверхеды библиотек Deep Copy для Go
Время чтения: ~8 минут
📺 Порождающие паттерны в Golang
Длительность видео: ~14 минут
📺 Паттерны параллельных вычислений в Golang
Длительность видео: ~15 минут
📺 Go за гранью скорости: pprof на проде
Длительность видео: ~21 минута
📺 Go за гранью скорости: pprof и бенчмарки
Длительность видео: ~13 минут
🔥 Avito Backend United meetup #7: Долма
Длительность митапа: ~2 часа 38 минут
#backend_avitotech
Время чтения: ~7 минут
Время чтения: ~8 минут
Время чтения: ~8 минут
Длительность видео: ~14 минут
Длительность видео: ~15 минут
Длительность видео: ~21 минута
Длительность видео: ~13 минут
Длительность митапа: ~2 часа 38 минут
#backend_avitotech
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥26🙏6👍5❤1🌚1
Наш фронтендер Антон Крылов видел некоторое кхе-кхе в коде и под впечатлением написал эту статью 🗂
А вот 6 признаков плохого компонента:
🟥 У него нет тестов. Значит, его сложно расширять и использовать извне.
🟥 Умеет сразу всё. И чтобы в нём что-то поправить, нужно всё ваше время.
🟥 Наполнен искусственными сложностями: лишними слоями абстракции, useEffect вместо useCallback и RxJS с любой технологией, с которой тяжело разобраться.
🟥 Неконсистентный. Его состояние или пропсы не соответствуют ожидаемому поведению.
🟥 Много использует отображения на флагах. Однажды они разрастутся, и всё станет непонятным.
🟥 Принимает большое количество пропсов. Это обычно приводит к низкой поддерживаемости.
#frontend_avitotech #habr_avitotech #статья_avitotech
А вот 6 признаков плохого компонента:
#frontend_avitotech #habr_avitotech #статья_avitotech
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥20👍3❤2
Юнит Usage — это ребята, которые отвечают за систематизацию, хранение и отображение данных о пользовательских событиях.
Если вам интересна работа с хранилищем данных и вы готовы усилить нашу команду, держите ссылочки:
🕚 старший бэкенд-разработчик в команду Usage
🕚 тимлид разработки в команду Data Quality
#units_avitotech
Если вам интересна работа с хранилищем данных и вы готовы усилить нашу команду, держите ссылочки:
#units_avitotech
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥18👍4❤3