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

iOS Мок Интервью Middle разработчика - Федор

Полное iOS мок-интервью Middle-разработчика с техническими вопросами и подробным фидбеком после разделов. Темы охватывают Swift, UIKit/SwiftUI, concurrency и архитектурные паттерны.

Источник: Ildar Zalyalov

Открыть на YouTube

Таймлайн

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

Это записанное мок-интервью iOS-разработчика Фёдора на заявленный уровень Middle: интервьюер Эльдар проверяет основы Swift, UIKit/SwiftUI, многопоточность и архитектуру, а после блоков даёт обратную связь. Обсуждаются ARC, память, коллекции, замыкания и диспетчеризация; жизненный цикл приложения, Auto Layout, RunLoop и hit-testing; GCD, OperationQueue, async/await и actors; MVVM, Coordinator, DI, Builder и Singleton. Интервьюер в целом положительно оценивает ответы, отдельно исправляя понимание optional-замыканий, потока вызова deinit и использования MainActor в UIKit-контексте.

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

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

  • Для списка пользователей, полученного из сети, кандидат выбирает Array из-за сохранения порядка и индексного доступа; интервьюер дополняет вариант OrderedSet из swift-collections.
  • В Swift полезно различать ArraySlice как представление диапазона исходного массива и copy-on-write: фактическая копия коллекции откладывается до модификации.
  • При ARC важны циклы сильных ссылок между объектами и захват self в замыканиях; для диагностики удерживаемых view controller кандидат использует Memory Graph и Instruments.
  • В интервью уточняется, что optional closure фактически является escaping, поскольку обёрнуто в Optional; замыкание, сохранённое в свойстве класса, также escaping.
  • Для UIKit нужно учитывать, что deinit исполняется на потоке, где освобождается объект; не следует предполагать главный поток для UI-кода внутри него.
  • Интервьюер уточняет, что UIViewController и UIKit-вью уже изолированы MainActor: Task, созданный в таком контексте, наследует его, поэтому после await обычно не требуется отдельно вызывать MainActor.run для обновления UI.
  • В архитектуре кандидат предлагает сохранять принятый в проекте подход, оставлять Coordinator только навигацию, а зависимости передавать через DI и протоколы для подмены в тестах.

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

2 ч 19 мин
Mobile

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

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

2 ч 13 мин
MobileJunior

Собеседование iOS разработчика | Вопросы Джуниору: Основы Swift, UIKit, Архитектура

Публичная запись собеседования junior iOS-разработчика с вопросами по Swift и UIKit, практической UI-задачей и обсуждением архитектуры. После интервью автор подробно комментирует ответы кандидата и зоны роста.

1 ч 33 мин
MobileMiddle

Публичное собеседование iOS-разработчика | Петя Коренев и Андрей Галушка

Публичная учебная сессия собеседования iOS-разработчика: опыт, Swift, iOS SDK, SOLID и рекурсивная задача на разворачивание вложенного массива. После каждой крупной секции интервьюер даёт разбор ответов и объясняет логику своей оценки.