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

Публичное Собеседование iOS | Alex Ozun, Роман Тысячник | iOS Ukraine #2

Публичный разбор iOS-технического интервью: от фундаментального Swift и UIKit до тестирования, отладки и практик проведения собеседований. Формат включает комментарии интервьюера к ответам кандидата и финальную Q&A-сессию.

Источник: iOS Ukraine

Открыть на YouTube

Таймлайн

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

Это демонстративное публичное iOS-собеседование Алекса Озуна с Романом Тысячником; оно прямо не связано с реальным наймом в American Express. В технической части обсуждают Swift, управление памятью, коллекции, конкурентность, UIKit, тестирование, архитектуру, отладку и менеджеры зависимостей. После каждой части интервьюер разбирает ответы кандидата, а в финале даёт личную положительную оценку его инженерному мышлению и отвечает на вопросы аудитории о найме и обучении.

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

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

  • Для интервью по Swift стоит уметь объяснять value/reference semantics, copy-on-write, захват значений в closure и причины retain cycle; отдельно различать weak и unowned ссылки.
  • Нужно уверенно разбирать различия class и struct, цепочку инициализации классов, наследование, final, статическую и динамическую диспетчеризацию, полиморфизм и особенности protocol extension.
  • Выбор между Array, Set и Dictionary следует обосновывать порядком элементов, уникальностью, Hashable и сложностью доступа; полезно знать Swift Collections, включая Deque, OrderedSet и OrderedDictionary.
  • По конкурентности важны различия serial/concurrent queue и sync/async, риск deadlock при sync на той же очереди, DispatchGroup, семафоры, OperationQueue, зависимости и ограничение параллелизма.
  • Для UIKit нужно понимать responder chain, Auto Layout как систему ограничений, роли CALayer/Core Animation, переиспользование ячеек UITableView и причины лагов при скролле: тяжёлую работу на main thread, лишние layout-пересчёты и blending.
  • Тестовую стратегию стоит строить от критичных для продукта сценариев: сочетать unit-, интеграционные и UI-тесты, тестировать асинхронный код через XCTest expectations и изолировать зависимости протоколами/DI.
  • При отладке полезны Instruments, Memory Graph Debugger, profiler, логи, условные breakpoints и git bisect для поиска коммита, внёсшего регрессию.

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

1 ч 49 мин
MobileMiddle

Собеседование на Middle iOS разработчика. Артур Игбердин & Илья Шаповалов

Публичное мок-собеседование Middle+ iOS-разработчика с вопросами по памяти и ARC, лайвкодингом и архитектурным рефакторингом. В конце участники обсуждают слабые ссылки в коллекциях и получают обратную связь по решениям.

1 ч 39 мин
MobileMiddle

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

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