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

Собеседование Senior Android разработчика. Часть 2

Фрагмент технического собеседования Senior Android Developer по Kotlin: generics, inline-функции, корутины и Flow. Вопросы чередуются с примерами кандидата и уточнениями по теоретическим деталям.

Источник: Мурагуль

Открыть на YouTube

Таймлайн

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

Во второй части собеседования обсуждают Kotlin Generics, inline-функции, корутины и Flow. Кандидат приводит пример обобщённого RecyclerView-адаптера с ViewHolder, затем отвечает на вопросы о границах типов, star projection, стирании типов и `reified`. Во второй половине разговора разбирают работу приостановок корутин, CoroutineContext, Job/SupervisorJob, а также горячие и холодные Flow, backpressure, контекст, ошибки и базовые операторы.

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

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

  • Уметь объяснить практическое применение generics на примере связки RecyclerView Adapter, ViewHolder и типа элемента: типизация избавляет от небезопасных cast.
  • Подготовить верхние и нижние границы типов и принцип PECS: Producer Extends, Consumer Super; в Kotlin — соответствующие направления `out` и `in`.
  • Различать star projection, стирание generic-типов во время выполнения и случай, когда `inline` вместе с `reified` даёт доступ к информации о типе.
  • Разобраться в назначении `inline`, `crossinline` и `noinline`, а также отличать их от value classes и `const val`.
  • Уметь описать корутины без утверждения, что они создают поток: suspend-вызов освобождает поток и продолжает выполнение через сохранённое состояние/continuation.
  • Знать состав и назначение CoroutineContext, различия Job и SupervisorJob и последствия ошибки дочерней корутины для соседних задач.
  • Для Kotlin Flow подготовить различия hot/cold потоков, backpressure, переключение контекста в цепочке, обработку ошибок и роли `map`, `transform`, `filter`, `emit` и `collect`.

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

1 ч 49 мин
MobileJunior

Собеседование в прямом эфире. Junior Android разработчик

Запись смоделированного Junior Android-собеседования с подробным техническим разбором ответов кандидата и последующей сессией вопросов аудитории о входе в профессию. Основной акцент — на практическом владении Android и умении рассуждать, а не только воспроизводить определения.

1 ч 50 мин
MobileJunior

Собеседование Junior Android разработчика. Проводит Кирилл Розов

Публичный разбор собеседования Junior Android-разработчика с практическими задачами по Android и последующей обратной связью. После интервью автор и кандидат обсуждают подготовку к первой работе и вопросы зрителей.