Android разработчик в команду Performance
В работе мы ставим амбициозные цели и не останавливаемся на достигнутом. Поэтому для нас так важно, чтобы каждый участник большой команды Авито разделял культуру компании. Погрузиться в неё помогает Манифест, в котором собраны наши основные ориентиры — миссия, ценности, принципы работы manifesto.avito.com
О команде
Платформенная команда Performance в поиске Android разработчика.
Команда отвечает за скорость работы Авито на всех платформах (Frontend, iOS, Android, Backend). Мы делаем инструменты тестирования, анализа и контроля за производительностью, помогаем продуктовым командам делать Авито быстрым и в целом развиваем культуру производительности в компании.
Примеры будущих задач:
- Внедрять метрики производительности в Android приложение, искать по ним проблемы как с помощью профилировщика, так и данных с продакшена, исправлять найденные проблемы с производительностью самостоятельно и привлекая ответственные команды;
- Разрабатывать систему автоматизированного обнаружения отклонений производительности: придумывать метрики и покрывать ими Android приложение, анализировать данные, строить и проверять гипотезы, автоматизировать нахождение отклонений и настраивать алертинги;
- Исследовать и внедрять техники оффлайнизации (кеширование и предзагрузку контента, data saver mode для слабых сетей и др.), новые протоколы и библиотеки для сетевого взаимодействия (quic, zstd, progressive images, потоковый парсинг json и др.), performance тесты в ci/cd (fps тесты на дизайн компоненты и др.);
- Оптимизировать время запуска приложения, потребление оперативной памяти (устранение утечек, добавление проверок в end-to-end тестах), участвовать в дежурствах по метрикам ANR, fps и другим;
- Активно участвовать в стратегическом планировании развития направления Performance в компании, в формировании культуры производительности в продуктовых командах и в развитии продуктового подхода при разработке инструментов Performance’а;
- Участвовать в разборах прокрасов performance метрик в аб тестах других команд, проводить tech design review предлагаемых ими решений, собирать обратную связь о продуктах команды Performance и формировать на ее основе бэклог улучшений.
Мы ждём, что вы:
- Имеете хороший опыт написания Android приложений, отлично разбираетесь в платформе Android и языке Kotlin;
- Знакомы инструментами профилирования Android приложений, можете найти неоптимальные места и их причины;
- Любите исследовательские задачи с высокой степенью неопределенности и технической сложности;
- Неравнодушны к производительности и хотите, чтобы продукт, над которым вы работаете, летал;
- Умеете брать на себя ответственность за принятые решения и результат;
- Коммуникабельны, умеете конструктивно доносить свои мысли до коллег, аргументировать свою позицию и вести переговоры по принципу win-win.
Будет здорово, если вы:
- Знакомы с продуктовыми подходами в разработке ПО и имеете опыт работы в платформенных (непродуктовых) командах;
- Понимаете, как собирать и анализировать метрики с продакшена, и знакомы с инструментами мониторинга и визуализации данных (Grafana и Redash);
- Понимаете азы математической статистики;
- Умеете работать с SQL и базами данных;
- Знакомы с другими языками программирования и платформами (например, Golang, Python);
- Имеете опыт публичных выступлений и готовы делиться знаниями на внутренних и внешних митапах.