AvitoTech
22.9K subscribers
1.91K photos
105 videos
1.68K links
Рассказываем, что у Авито под капотом, делимся инженерной экспертизой и зовём на митапы.

По всем вопросам: @direct_avitotech

Сайт: https://avito.tech
Хабр: habr.com/ru/company/avito
Гитхаб: github.com/avito-tech

Регистрация в РКН: https://clc.to/FOxC1A
Download Telegram
🔥8🥴62
Крошка-джун к отцу пришёл. И спросила кроха:
— Что есть в коде — «хорошо», и что есть в коде — «плохо»?


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

🎧 Слушать подкаст

Выпуск получился объёмным, так что если надумали послушать именно Вадима, ставьте на 1:09:00.

#avitoteam
Please open Telegram to view this post
VIEW IN TELEGRAM
26👌4❤‍🔥1👍1
Как заонбордиться тимлиду?

Всем привет от Анатолия Панова, CTO Авито.Товары. Толя пять раз онбордился в новые команды. А когда доонбордился до руководителя менеджеров, помогал с адаптацией 10+ тимлидам 🚀

Кажется, достаточно аргументов в пользу того, чтобы вы прямо сейчас пошли читать вот эту статью Толи 🗂 Она про 90 эффективных дней на новом месте, страхи, приоритеты и авторитеты.

Краткая хронология событий этих 90 дней — в карточках. Добро пожаловать он борд!

#management_avitotech #статья_avitotech #habr_avitotech
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍218
Как лучше всего инстанцировать классы?
Спойлер: ни языковая конструкция new, ни статическая фабрика не дадут слабую связанность. Все зависимости в них будут фактически прибиты гвоздями к объектам.
Правильный ответ: в новом ролике Юры Афанасьева в рамках курса «Паттерны и практики написания кода».

1️⃣ Смотреть ролик тут.
2️⃣ Смотреть курс с самого начала тут.
3️⃣ Смотреть первый сезон курса лекций тут.

#avitoteam #видео_avitotech
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8🥴63👍3
⚡️ Уже через час! ⚡️
Дизайн-стрим: Как дизайнеру найти свою компанию

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

📺 Присоединиться к стриму

#design_avitotech
Please open Telegram to view this post
VIEW IN TELEGRAM
8🔥5
Что у нас сегодня?
Anonymous Poll
51%
Спагетти
49%
Лазанья
​​Для работы мы не выбираем ни то, ни другое.

О чём речь? Узнаете во второй части выпуска «Плохой код VS Чистая архитектура» подкаста Кода Кода. В гостях — наш техлид, Саша Пряхин.
Ребята обсудили качество кода через призму задач компании, бизнеса и команд.

За подробностями залетайте в подкаст. Ну, или в лапшичную, если разыгрался аппетит.
4👍1
Всего один день остался, чтобы попробовать свои силы и войти в айти. Подача заявок в Академию Аналитиков Авито завершается сегодня.

У вас ещё есть шанс попасть на бесплатный образовательный курс. Что нужно для поступления, какие будут предметы и кем вы станете в итоге — по этой ссылке. А ещё у нашего бота в Telegram.

Решайтесь, времени на раскачку традиционно нет.

Подать заявку 🔥

#analytics_avitotech
Please open Telegram to view this post
VIEW IN TELEGRAM
🙏94
Финальная серия второго сезона лекций о качественном рабочем коде уже на нашем канале 🥲 Нет, это не слёзы, просто антипаттерн в глаз попал.

Почему не стоит работать с Service Locator DI-контейнера и как распознать его в коде? Смотрите видео и пополняйте свои знания ответами на эти вопросы.

А мы благодарим Юру и команду проекта (себя...) и ждём новый сезон! 🚀

#avitoteam #видео_avitotech
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥13👍6🔥51
Почти месяц назад в московском офисе Авито проводилась встреча MoscowJS 52. В посте — все материалы со встречи ☄️

📺 Весь плейлист MoscowJS 52

🗂 Доклады отдельно:
Профилирование фронтенда в проде
Илья Алонов (Авито) — о JS Self-Profiling и перформансе веб-приложений

Доступность для всех
Татьяна Чуйкова и Артём Чугаинов (Kaspersky) про доступность: что это, почему она важна, и что именно нужно делать для её обеспечения.

Pet-project — песочница для разработчика
Паша Кондаков (Тинькофф) рассказал, зачем нужны pet-проекты, и объяснил, где можно искать идеи для них.

It is fine или как эффективно выгореть
Ольга Кобец подготовила доклад для тех, кто чувствует приближение выгорания и не знает, как себе помочь.

🔵 Фотографии в альбоме тут.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥12👍75
Авито постоянно растёт, команды используют разные языки и тестовые фреймворки. Чтобы QA-инженеры не выгорали после первой фичи, мы внедрили кастомную TMS и написали собственный сервис выгрузки.

Чем это помогло Авито?

1. Древовидная структура тестовой модели обеспечивает простоту понимания и прозрачность качества.
2. Сервис выгрузки избавляет инженеров от двойной работы, когда сначала они писали тест в коде, а потом дублировали в карточку хранилища.
3. В процессе загрузки тест-кейсов строится наглядная пирамида, автоматические и ручные тесты окрашиваются в разные цвета.
4. В TMS можно отслеживать метрики, важные для оценки качества продукта. Например, процент автоматизированных тестов по подразделению.
5. Инженер заранее пишет менее связанный тестируемый код, который легко проверить.
6. TMS меняет подход к архитектуре приложения: инженеру нужно соблюдать пирамиду тестирования, покрывать код unit-тестами.
7. TMS упрощает контроль качества тестирования. Легче заметить, когда не хватает автоматических тестов, и поставить ответственной команде задачу.
8. Легко онбордить новичков: тестовая модель отображает функциональность приложения, как еётестировать и где она находится в коде.

Подробнее о том, как мы внедряли новую систему и с какими ошибками столкнулись в процессе, в статье Василия Юдина, техлида команды, которая разрабатывает инструменты тестирования.

#habr_avitotech #статья_avitotech #qa_avitotech
👍11🔥43😱3👎1
This media is not supported in your browser
VIEW IN TELEGRAM
Avito Design Talk: дизайнер vs продакт
29 июня в 18:00 мск 🥊

В синем углу ринга Наташа Юматова, руководитель продукта.
В пурпурном (потому что цвет года) — Лёша Архипов, тимлид дизайнеров.

Но драки не будет. Будет креативная пара. Как её создать и рисовать реально работающие концепты, коллеги из кластера Trust&Safety расскажут в рамках онлайн-митапа Avito Design Talk.

Гости митапа:
⭐️ Роза Бадаева, старший продакт, ex. Delivery Club, научит выносить пользу из конфликтов продактов и дизайнеров.
⭐️ Дмитрий Быков, Osome, поделится опытом, как из руководителя дизайнеров стал специалистом по развитию продукта, и как представители этих профессий могут учиться друг у друга.

Будет интересно, а может даже и холиварно!
Чтобы не пропустить, регистрируйтесь, а мы напомним.

#avitodesignmeetup #design_avitotech
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥17👍2👌1😐1
«Паттерны и практики написания кода» — это два сезона образовательных лекций, в которых Юра Афанасьев выдаёт базу качественного кода. Чтобы вам было удобно смотреть, мы собрали все лекции в плейлисты.

Первый сезон: ревью кода, MVC, архитектура, GRASP-шаблоны и др.
Второй сезон: SOLID-принципы, магические числа, Dependency Injection и др.

Важно: Юра больше 10 лет пишет на PHP. В лекциях вы увидите код на нём, но это не помешает восприятию — все принципы и подходы универсальны для любого ЯП.

И ещё кое-что: помните, что принципы — не табу или аксиомы, а лишь маркеры, предостерегающие от проблем.

#видео_avitotech #avitoteam
34👍12🔥8❤‍🔥4🏆4
Делимся материалами с Analytics meetup & afterparty конференции Aha’23!

📺 Как нанимать и растить тимлидов
Глеб Белогорцев (Авито) с докладом о том, как мы нанимаем и/или растим тимлидов Аналитики

📺 Data driven’ность — как командам аналитики фокусироваться на стратегически важных вещах и ставить в OKR аналитиков оцифрованную пользу для бизнеса
Доклад от Ивана Леонтьева (СберМаркет), где из названия понятно, о чём будет речь :)

Фотографии с мероприятия лежат в альбоме странички Вконтакте.

#analytics_avitotech #avitoanalyticsmeetup
Please open Telegram to view this post
VIEW IN TELEGRAM
👍165
Как построить надёжную шину данных на Apache Kafka

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

Она:
🕚 напрямую взаимодействует с Kafka и исключает необходимость разбираться в партициях, офсетах, хранении событий и в целом — в Kafka;
🕚 помогает отлаживать микросервисы, так как предоставляет разработчикам универсальные метрики (скорость записи и чтения, количество публикуемых событий, время обработки событий, размер бэклога);
🕚 способна пережить отказ отдельных серверов или даже дата-центра.

Детали об архитектуре и логической надёжности шины данных — в статье нашего ведущего инженера Павла Агалецкого.

#backend_avitotech #habr_avitotech #статья_avitotech
Please open Telegram to view this post
VIEW IN TELEGRAM
135🔥5👍1
Мы на Saint HighLoad++ 🚀

Будем говорить о распиле монолита и скачивании миллионов фотографий в сутки, а ещё поделимся историями фейлов. На стенде: мерч, игры, инженеры, разговоры о важном (и не очень), ваши вопросы нашей команде.

Готовы? Тогда ждём вас. Ориентир — зал Башня.

Санкт-Петербург, DESIGN DISTRICT DAA in SPB

#avitoteam
Please open Telegram to view this post
VIEW IN TELEGRAM
17🔥5