Какие события отслеживали в приложениях
Что проверяют
Понимаете ли вы, зачем продукту аналитика, и умеете ли встроить её в iOS-приложение: с понятной схемой событий, без утечки персональных данных и без вызовов SDK по всему коду. Следом спрашивают, как вы проверяли, что события действительно доходят.
Как отвечать
Вопрос про ваш опыт: опирайтесь на свой проект, реальные события и цифры. Каркас такой:
- продуктовые события: шаги воронки вроде
onboarding_completed,search_performed,checkout_started,purchase_completedс параметрами. Имена по единой схеме «объект_действие» и общий план трекинга с Android и вебом; - свойства пользователя: тариф, версия приложения, выбранный язык. Без email и телефона;
- технические события: краши и нефатальные ошибки через Crashlytics, зависания и расход энергии через MetricKit (
MXMetricManagerприсылает отчёты раз в сутки), время холодного старта и загрузки экранов; - инструменты: Firebase Analytics, AppMetrica, Amplitude или свой бэкенд. Выбор объясните задачей.
Про архитектуру скажите, что SDK прячется за протоколом вроде AnalyticsService, который отправляет событие в один или несколько провайдеров. Так проще сменить SDK, не слать ничего до согласия пользователя и проверить в тестах, что на действие ушло нужное событие. Упомяните приватность: ATTrackingManager.requestTrackingAuthorization перед доступом к IDFA, файл PrivacyInfo.xcprivacy и данные о приватности в App Store Connect. Для отладки в Firebase есть DebugView с аргументом запуска -FIRDebugEnabled.
Если сами аналитику не внедряли, скажите честно и опишите, какие события добавили бы в знакомое приложение и на какой вопрос продукта отвечает каждое.
Где спотыкаются
Перечисляют «клики по кнопкам» без цели. Интервьюеру важно, какое решение приняли по этим данным, например переделали шаг онбординга, на котором терялась заметная доля пользователей.
Отправляют персональные данные в параметрах событий. Это проблема и с законом о персональных данных, и с декларацией приватности в App Store.
Вызывают SDK напрямую из контроллеров и не тестируют события. Через полгода одно действие называется в iOS и Android по-разному, и воронка в дашборде не сходится.