Смотреть любимые тайтлы со смартфона или залпом по телевизору — для многих уже привычная рутина. Устроиться поудобнее, открыть приложение, нажать «Play». Но как бы легко это ни выглядело, за твоим досугом стоит огромная команда, которая делает невидимую, но колоссальную работу.
В этом интервью Катя Супрун, технический менеджер Android-платформы, рассказала о том, как вместе с ребятами из core-команды она отвечает за производительность, оптимизацию и стабильность — за то, чтобы твой просмотр был максимально комфортным. Но кроме рабочих будней у них есть киновечера, шашлыки, настолки и традиция радоваться даже маленьким победам.
Расскажи, чем занимается твоя команда? С каким технологическим стеком вы работаете?
Занимаемся разработкой приложений под Android Mobile и Android TV. Мы — core-команда, а это значит, что наш фокус смещён в сторону общей производительности приложений, загрузок, рефакторинга и разных видов оптимизации. Плюс мы работаем над дизайн-системой, а также готовим и выгружаем релизы в магазины приложений. Продуктовых фич у нас немного — мы всё-таки больше техническая команда, но иногда мы помогаем продукту. Это могут быть либо общие фичи, где мы подхватываем задачи других команд, либо что-то специфическое, что не вписывается ни в один из существующих потоков разработки.
Что касается стека — он стандартный и соответствует текущим трендам. Работаем с Kotlin, Coroutines, Compose и Kotlin Flow. И, конечно, как и многие в индустрии, активно смотрим в сторону искусственного интеллекта и внедряем его не только в процессы разработки, но и в помощь тестированию.
С какими подразделениями взаимодействуете по работе?
В связи с тем, что мы работаем над техническими метриками приложения, большая часть взаимодействия идет с аналитиками — у нас даже есть выделенные специалисты именно под это направление.
Активно общаемся с продуктовыми командами, которые отвечают за UX, биллинг, подписочную модель и видео, так как фичи этих команд и наши доработки часто пересекаются по коду, а репозиторий у нас один. Со своей стороны мы следим, чтобы продуктовые фичи не снижали наши целевые показатели производительности приложения, а наоборот, только улучшали их. Ещё много работаем с партнерствами, особенно в плане предустановок, это тоже значительная часть нашего функционала.
Какими своими достижениями за последний год гордитесь?
Главное достижение на данный момент — улучшение метрик Android Vitals. Это специальные метрики от самого Google, отражающие производительность работы для всех приложений в Google Play Store. И одна из самых значимых — доля ANR в активном режиме — та самая ошибка, когда приложение зависает и пользователь видит диалог «подождать или закрыть».
Мы усердно работали, чтобы снизить этот показатель до порогового значения. Это было критично для нас, потому что метрика влияет на выдачу в поиске Play Store. Если доля ошибок ANR в активном режиме не попадает в доверенный порог — а это меньше 0,47% — Google может реже показывать приложение в своей выдаче.
Это был настоящий вызов: сначала мы очень мало знали об особенностях этих метрик и о том, как на них влиять, а готового гайда по исправлению таких ошибок не существует. Мы пробовали разные гипотезы с каждым релизом: что-то работало, что-то нет, а какие-то изменения даже делали хуже. Некоторые ANR фиксились достаточно просто. Но были и такие, которые требовали более глубокого подхода: рефакторинга, оптимизации старта приложения — всё это косвенно влияло на ошибки.
В итоге мы не только попали в порог, но и показали результат значительно лучше, чем у коллег по рынку, как показал анализ медианы в кабинете разработчика. И я очень горжусь, что нам это удалось.
Какой был самый большой факап?
Недавно случился факап с продуктовой доработкой, которая вызвала ANR-ошибки у пользователей. Пришлось срочно останавливать раскатку и делать хотфикс. Однако даже с учетом скорости исправления этот рост ANR все равно отразился на наших прекрасных метриках — мы сами себе создали проблемы, но сделали выводы. Пересмотрели процесс дежурства на проде и отладили реакцию команды на инциденты: теперь есть специальная команда, которая собирается, если что-то идёт не так: фиксит, тестит и выкладывает исправления. И также мы оптимизировали наш quality gate — набор метрик, правил и процессов для выпуска качественного продукта, сделав его строже.
Ошибки, конечно, всегда огорчают и демотивируют, но мы стараемся относиться к ним как к возможности увидеть, где были неправы, и найти новые точки для улучшений.
Команда общается вне работы?
Да, мы очень активны. Есть костяк людей, которые собираются играть в настольные игры постоянно. Ещё проводим киновечера — примерно раз в месяц: голосуем за фильм, вместе смотрим и обсуждаем. Летом обязательно выбираемся на шашлычки, это все любят. В бары ходим без строгой периодичности — обычно по поводу Нового года или когда кто-то говорит: «А давайте сходим, давно не были».
Как стать частью такой команды?
Мы всегда приветствуем людей, увлечённых Android-разработкой. Но поскольку мы core-команда, особенно ценим тех, кто готов и баг починить, и рефакторинг спроектировать, и запилить продуктовую фичу. Задачи бывают очень разными, и нам нужны люди, которые не боятся нового, готовы погружаться в контекст и разбираться в непростых темах оптимизации.
Из человеческих качеств — ценим открытых и доброжелательных, готовых к общению. Для нас главное в коллегах — желание быть частью команды и разделять наши ценности.
Как относишься к экспериментам и инициативам от сотрудников?
Мы очень открыты к инициативам. История с Android Vitals — яркий пример, как идеи и эксперименты привели к значимому результату.
Мы всегда готовы попробовать что-то новое и внедрить перспективную гипотезу, но есть обязательное условие — proof of concept. Человек должен доказать, что его идея применима и принесёт конкретную пользу. Если есть риск, что идея не выгорит, мы возвращаем её на доработку. Если рисков не видим — пробуем. Если кто-то приходит и говорит: «Хочу попробовать новую библиотеку», мы отвечаем: «Окей, вот тебе задача. Проработай внедрение, собери прототип, протестируй с точки зрения производительности». Если видим явные потенциальные плюсы — следующей задачей становится полноценное внедрение.
К тому же, согласно нашей it-культуре все новые функциональности у нас под фичи-тогглами. Это даёт возможность раскатывать и закрывать эксперименты на бою без клиентских релизов.
Как командой используются технологии AI?
Да, как и говорила ранее, активно движемся в сторону ИИ. Внедрены нейроревью и нейрорезюме. Пока эти проверки не блокирующие — разработчик может не согласиться с замечаниями, потому что они иногда галлюцинируют. Но это хорошее подспорье, к тому же уже несколько раз использование LLM подсветило критичные моменты на нейроревью.
Нейрорезюме по тикету работает так: когда задача поступает в тест, LLM анализирует сделанное и инженерным языком описывает фичу и затронутые экраны и функционал. Это очень помогает тестировщикам.
В целом, мы на уровне компании активно внедряем AI-инструменты в работу как технарей, так и других департаментов.
Как поддерживаешь профессиональный рост сотрудников?
Есть ребята, кому всё интересно, и они по сути сами занимаются своим ростом. Говорят, что хотят попробовать, мы соотносим их предложения с целями команды и компании, и на пересечении этих множеств рождаются задачки на реализацию. И ребята сами проектируют и проверяют свои гипотезы, внедряют новое и так растут.
Вообще для каждого сотрудника есть примерный план развития, который строится в том числе на «белых пятнах» в проекте — местах, куда человек редко «заходил», погружаем в задачи именно на эти области. Если кто-то не очень хорош в дизайн-системе — даём задачи по дизайн-системе. Мало работал с крашами и ANR — даём больше таких задач.
Строго регламента нет, но раз в квартал обязательно проводим встречи 2+1 (техменеджер + тимлид + сотрудник). Смотрим, что человек сделал, что получилось, что нет, чем бы он хотел заняться и что бы мы хотели от него. Также обязательно слушаем обратную связь от самого сотрудника. И на основе этого диалога строим индивидуальный план. На годы вперёд не загадываем, но на квартал-два у каждого есть примерное поле роста.
5 советов, как стать самой крутой командой, от Кати Супрун, и больше о жизни сотрудников Иви — в телеграм-канале и группе в VK!
Автор: Dimonessaa


