Как стать автором
Обновить
177.24
AvitoTech
У нас живут ваши объявления
Сначала показывать

Что будет с мобильными релизами, если улучшать и автоматизировать процессы

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

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

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

Система Quality Score: как оценивать внешнее качество продукта

Уровень сложности Средний
Время на прочтение 6 мин
Количество просмотров 1.8K

Рассказываем, как создали понятную систему оценки качества для команд разработки Авито. Мы отобрали самые релевантные метрики, протестировали их, а затем показали коллегам, как ими пользоваться. Звучит просто, но на самом деле это был долгий и кропотливый процесс. Что получилось в итоге, читайте в статье.

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

Как мониторить здоровье вашей Gradle-сборки

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

Как себя чувствуют ваши Gradle-сборки? Рассказываем, как проверить их состояние и как «подлечить», чтобы CI работал чётко.

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

Apache Spark и PySpark для аналитика. Учимся читать и понимать план запроса в SparkUI

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

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

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

Запуск потенциально опасного кода в изолированном окружении. Как мы сохраняем безопасность на macOS

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

Мы запустили облачный тест-раннер Emcee. Теперь другие компании могут тестировать приложения, не разворачивая у себя локальную версию раннера. Правда, запуск стороннего кода на наших серверах — это небезопасно. Но мы решили этот вопрос — рассказываем, как это было.

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

Построение платформенного продукта в Авито

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

Мы в Авито разработали свою внутреннюю платформу для разработчиков. Несмотря на то, что создание платформенного продукта — довольно затратная история, в итоге мы видим сплошные плюсы. Она растит скорость и качество разработки, делает системы стабильнее, помогает инженерам сосредоточиться на бизнес-задачах, а не на рутине. 

Наш опыт построения платформы мы постарались заложить во внешнее решение Plato, которое опирается на проверенные open-source решения.

О преимуществах платформы, процессах её разработки и сложностях в реализации — в этой статье.

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

Как мы выдержали x20 рост нагрузки на сервис Авито Автозагрузка

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

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

Читать далее
Всего голосов 11: ↑9 и ↓2 +7
Комментарии 6

Используем JS Self-Profiling API для профилирования фронтенда на клиентах

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

Поговорим с нашим фронтенд-инженером Ильёй Алоновым про преимущества и недостатки JS Self-Profiling, посмотрим, как им пользоваться, и узнаем, какие есть подводные камни и как их обойти. Если интересуетесь перформансом веб-приложений — не проходите мимо :)

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

«Всё происходит само собой, когда тебе не всё равно»: как из игрока в покер стать руководителем тимлидов

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

Сергей Баранов рассказывает, как стал юнит-лидом в Авито, о сложностях и успехах в работе, и почему менеджерам на самом деле не нужны суперкрутые инженеры.

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

Инструменты тимлида: как управлять техническим бэклогом

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

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

Читать далее
Всего голосов 12: ↑11 и ↓1 +10
Комментарии 2

Семантики доставки событий в распределенных системах

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

Павел Агалецкий, ведущий разработчик в юните Platform as a Service в Авито, рассказал про семантики или гарантии доставки сообщений, и почему с ними не всегда просто разобраться.

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

Миграция приложения на Jetpack Compose

Уровень сложности Средний
Время на прочтение 9 мин
Количество просмотров 6.9K

Jetpack Compose — крутой набор инструментов, который упрощает работу над интерфейсами для Android. С ним не нужно писать так много кода, как в обычных XML-разметках. А ещё в нём много полезных для разработчика фич — в этой статье расскажем о них подробно. И, конечно, выясним, как перенести UI и архитектуру приложений на Jetpack Compose и забыть View на 10 000 строк, как страшный сон.

Читать далее
Всего голосов 12: ↑11 и ↓1 +10
Комментарии 14

Go's Garbage Collection: как работает и почему это важно знать

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

В статье посмотрим на Go Garbage Collector — механизм автоматического освобождения невостребованной памяти приложения в Go. Разберём его устройство и принципы работы.

Читать далее
Всего голосов 25: ↑21 и ↓4 +17
Комментарии 12

«Возьмите инициативу на себя»: готовимся к System Design Interview

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

Рассказываем, для чего в Авито проводят интервью по System Design, чего от него ожидать и что нужно знать, чтобы его успешно пройти.

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

Feature-Sliced Design – альтернативный подход к организации кода приложений

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

Feature-Sliced Design — это архитектурная методология, активно набирающая популярность в последнее время. И не зря: организация разработки по её правилам позволяет упростить процессы, сделать их быстрее и гибче. Больше не нужно будет переживать из-за совместной работы в одном домене и конфликтов кода, долго искать ответ на вопрос «А куда же впилить новую фичу, тут и так намешано…» 

О том, как устроена Feature-sliced Design, чем она отличается от «классической» организации кода, плюсах и минусах от её внедрения — в этой статье.

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

Домашка на лето: что почитать разработчику

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

У нашего разработчика Михаила Ефремова есть хобби — читать книги и делать подборки особенно полезных. В этой статье он расскажет, как собрал книжную полку с лучшими, на его взгляд, книгами для разработчиков и поделится мнением о них. Миша подобрал книги по алгоритмам, архитектуре, базам данных, Linux/UNIX, Golang, Python.

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

Сравниваем скорость и оверхеды библиотек Deep Copy для Go

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

Егор Гартман, бэкендер Авито, рассказал, как протестировал несколько библиотек Deep Copy, а потом сделал свою — быстрее и эффективнее.

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

Как измерить надёжность вашего приложения

Уровень сложности Средний
Время на прочтение 10 мин
Количество просмотров 4.3K

Рассказали, как мы в команде SLA учились измерять надёжность сначала отдельных микросервисов в архитектуре Авито, а затем всей системы в целом. Подробно опишем, что входит в понятие надёжности сервиса, что такое бюджет ошибок и как его считать. А в конце поделимся способами измерения надёжности, которые помогли нам сформулировать понятную и удобную в подсчётах метрику для бизнеса.

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

Как реализовать ролевую систему доступа через Open Policy Agent. Опыт PaaS Авито

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

Антон Губарев, инженер в команде Platform as a Service (PaaS) Авито, рассказал, как они с командой внедряли политики авторизации с помощью Open Policy Agent (OPA), и с какими проблемами столкнулись на пути.

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

Пишем хорошие компоненты, которые захочется переиспользовать, а плохие — не пишем

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

Обсудили с Антоном Крыловым, фронтенд-разработчиком Авито, как нужно и не нужно писать компоненты. Поговорили про характеристики компонентов и коснулись Dependency Injection и DSL-like подхода в React.

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

Информация

Сайт
avito.tech
Дата регистрации
Дата основания
2007
Численность
5 001–10 000 человек
Местоположение
Россия