Разработчик инфраструктуры автоматического UI-тестирования приложений для iOS

Дата размещения вакансии: 23.03.2025
Работодатель: Яндекс
Уровень зарплаты:
з/п не указана
Город:
Москва
Садовническая улица 82с2
Требуемый опыт работы:
От 3 до 6 лет

Карты и Навигатор ежедневно облегчают жизнь миллионам пользователей, помогая решать самые разнообразные задачи, будь то поиск ресторана, поездка на встречу с друзьями, планирование визита в салон красоты, построение оптимального маршрута или получение информации о городских событиях. Все эти функции крайне важны для современного человека. Зачастую у пользователя ограничено время на решение своей задачи: надо быстро оплатить парковку или найти кратчайший маршрут без пробок. Поэтому стабильность и скорость работы приложения играют очень важную роль.

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

Как устроена разработка
Мы делаем ставку на мультиплатформенную разработку на основе Kotlin Multiplatform (KMP). Эта технология позволяет писать код один раз, а затем использовать его на двух платформах — iOS и Android. Именно поэтому для написания UI-тестов мы разработали собственный фреймворк на базе KMP. Под капотом он использует XCUITest для iOS и Espresso для Android.

Наша команда активно использует современные технологии и инструменты:

  • основной язык iOS-разработки — Swift, включая его современные возможности;
  • автоматизацию всех этапов от передачи задачи в тестирование до сборки и публикации релиза;
  • автоматизированные замеры производительности приложения — мы отслеживаем метрики времени старта приложения и Time-To-Interactive (TTI) как у пользователей (онлайн-метрики), так и на специальной ферме устройств после каждого коммита (офлайн-метрики).

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

Технологический стек:

  • Swift 5.9, iOS 15 и выше
  • XCTest и XCUITest для юнит- и UI-тестов
  • CI/CD на основе Arcadia
  • Fastlane
  • SwiftLint для контроля качества кода
  • SPM и CocoaPods для управления зависимостями

Какие задачи вас ждут

Разработка и поддержка UI-тестов
Вам предстоит создавать автотесты с использованием KMP и XCUITest для проверки функциональности приложения, пользовательских сценариев и визуальных интерфейсов.

Автоматизация процессов тестирования
Вы будете интегрировать UI-тесты в процессы CI/CD для оперативного выявления проблем на этапе разработки.

Оптимизация тестовой инфраструктуры
Предстоит улучшать существующие инструменты и сценарии, повышать стабильность и скорость тестов.

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

Поддержка релизов
Нужно будет участвовать в еженедельных релизах, заниматься диагностикой и устранением проблем.

Мы ждем, что вы

  • Уверенно владеете Swift и понимаете принципы разработки для iOS
  • Уже знаете или готовы быстро изучить Kotlin Multiplatform
  • Работали с XCTest и XCUITest
  • Понимаете, как устроены CI/CD-пайплайны, и умеете интегрировать в них тесты
  • Умеете разрабатывать структурированный и читаемый код автотестов
  • Заинтересованы в автоматизации рутинных процессов и улучшении качества продукта
  • Способны работать автономно и брать на себя ответственность за выполнение задач

Будет плюсом, если вы

  • Работаете со SwiftUI
  • Оптимизировали iOS-приложения
  • Используете инструменты анализа производительности и мониторинга
  • Занимались настройкой ферм устройств для тестирования или работали с ними

Больше о нашей команде

Мы много внимания уделяем обмену знаниями: раз в месяц проводим для всей разработки общие встречи, на которых рассказываем про интересные исследования и достижения в разных технологических областях. Еженедельно собираемся платформенными командами и обсуждаем насущные проблемы. По результатам спринта проводим продуктовые демо. Уважаем work-life balance, тимбилдинговые активности, неформальное общение, вечеринки, поддерживаем дружескую атмосферу. Приветствуем участие в школах мобильной разработки в качестве преподавателей, помогаем с выступлениями на конференциях.

Что мы предлагаем

  • Высокий доход и премии каждые полгода за эффективную работу
  • Возможность работать над ещё не решёнными задачами, участвовать в обсуждении и предлагать идеи, влиять на процесс и результат
  • Сильная команда, с которой можно расти
  • Расширенная программа ДМС: стоматология, обследования, вызов врача на дом и многое другое
  • Оплата 80% стоимости ДМС для супругов и детей
  • Компенсация оплаты питания
  • Корпоративные скидки в бассейнах, фитнес-центрах и магазинах
  • Курсы, тренинги, участие в конференциях
  • Гибкий график работы
  • Бесплатная парковка