Вернуться в видеотеку

Собеседование Android system design

Публичная учебная сессия Android System Design с проектированием мобильного совместного текстового редактора. Участники разбирают требования, архитектуру клиента, коллаборативное редактирование и дают детальный фидбек по ходу интервью.

Источник: Android Broadcast. Все об Андроид разработке

Открыть на YouTube

Таймлайн

Коротко о видео

Публичное мок-собеседование по Android System Design: кандидат Андрей проектирует мобильный клиент совместного текстового редактора с форматированием, шарингом, офлайн-работой и одновременным редактированием. В ходе сессии он собирает требования, предлагает слои приложения, репозитории, пагинацию, постоянное соединение, дебаунс обновлений и UI-слой. Интервьюер подробно разбирает подход: хвалит подготовку и уточнение требований, но советует идти от пользовательских сценариев, чаще сверяться с требованиями и заранее фиксировать ключевые решения и неразобранные риски.

Затронутые темы

Что взять на заметку

  • Перед схемой собрать и зафиксировать требования: число редакторов, набор стилей, доступ по ссылке или списку пользователей, список документов, офлайн-сценарий и приоритет MVP.
  • Строить архитектуру от пользовательских сценариев и потоков данных, а не начинать с привычных паттернов вроде Repository или Use Case без конкретного назначения.
  • Раз в несколько минут синхронизироваться с интервьюером: достаточно ли текущей детализации, куда углубляться дальше и какие требования ещё не покрыты.
  • Для длинного изменяемого списка документов обсудить пагинацию; в разговоре кандидатом рассматривалась курсорная пагинация как вариант для нестабильного набора документов.
  • Для совместного редактирования нужно отдельно обозначить частичную отправку изменений, постоянное соединение, конфликты, офлайн-синхронизацию, ошибки сервера и поведение при изменении или удалении уже неактуального фрагмента.
  • Модель обновления должна учитывать изменения текста и стилей, а UI — применять инкрементальные изменения, чтобы не перерисовывать весь редактор при каждом событии.
  • Если важный вопрос не успевают решить, его стоит явно записать как открытый риск, а не молча исключать из схемы; в этой сессии шаринг и офлайн-поведение остались недообсуждёнными.

Рекомендуем посмотреть

1 ч 39 мин
MobileMiddle

Моковое собеседование на Middle iOS - разработчика | Solvery & CoffeeCode

Разбор публичного мок-интервью Middle iOS-разработчика с практическими задачами по тестированию, Swift, алгоритмам и проектированию чата. Интервьюер комментирует, какие сигналы и уточнения важны на техническом собеседовании.