телефонный скрининг
Телефонный скрининг (iOS)
| | | |
|—|—|—|
||Вопрос|Ответ|
|Общее|||
|1|Что ищешь на новом месте работы? Что важно, приоритетно?||
|2|Почему рассматриваешь предложения?||
|3|Когда готов выйти на новую работу?||
|4|Какие пожелания к формату работы? Варианты:
· Офис
· Гибрид
· Полная удалёнка или другой город (не Москва) – название города||
|5|Что нравится в работе/задачах/коллективе? Что получается делать лучше всего?||
||Чего не хватало на предыдущих проектах?||
||С чем не хочешь работать?||
|6|Что не нравится в работе/задачах/коллективе? Что не нравится или не получается делать в профессии?||
|7|Какова твоя роль в команде? Проводишь ли ревью кода? Пример:
· Просто выполнение бизнес-задачек по ТЗ
· Участие в принятии архитектурных решений
· Исследование, внедрение новых технологий||
|8|К какому уровню себя относишь (junior-senior)? Как хотел бы дальше развиваться (в техническую экспертизу или в менеджмент)?
Для лидов: как долго занимаешься руководством и какова численность в подчинении? Какие инструменты используете (скрам, канбан, или просто как продуктовая команда)?||
|Платформа|||
|9|Расскажи о своём опыте работы с ObjectiveC и со Swift. Варианты:
· Больше двух лет
· Год-два
· До года
· Имею представление
· Отсутствует||
|10|Как именно технически реализован Optional (опшанл) в Swift? Варианты:
· enum, содержащий кейсы .none и .some(Value) (есть значение и nil/ничего)
· Помечает, что вместо указанного типа можно подставить nil
· Такого типа в Swift нет
· Другое (что именно)||
|11|Какие сообщения помимо retain (ретейн) и release (релиз) существуют для ручного управления памятью? Варианты:
· copy, autorelease (авторелиз)
· Другое (что именно)||
|12|Что такое ARC (А Эр Си) и как она работает (на каком этапе)? Варианты:
· Добавляет вызовы retain/release/autorelease в рантайме (runtime)
· Проставляет вызовы retain/release/autorelease в момент компиляции (compile time)
· Это garbage collector (сборщик мусора)
· Runtime автоматически считает ссылки
· Другое (что именно)||
|13|В каком потоке происходит оповещение от Notification Center (нотификейшн центер)? Варианты:
· В основном/главном (main)
· В том потоке, в котором было отправлено уведомление
· Отправка с любого, но приходит всегда в главный (main)
· Отправка с основного/главного (main), но приходит в разных
· Другое (что именно)||
|14|Что такое RunLoop (ранлуп)? Сколько ранлупов запущено в приложении по-умолчанию?||
|15|В чем различия между GCD (ДжиСиДи) и NSOperationQueue (энэс оперейшн кью)? Варианты (мультивыбор):
· Второе – это объектная обертка над GCD, поддерживает зависимости между операциями и отмену
· Другое (что именно)||
|16|Что будет, если в GCD (ДжиСиДи) вызвать метод DispatchQueue.main.sync() (диспатч кью мэйн синк) внутри метода viewDidLoad() (вью дид лоад)? Варианты:
· deadlock (дедлок: очередь ждет сама себя / заблочится)
· livelock (лайвлок)
· Ничего
· Креш/падение (если ответит так, то спрашивать почему)
· Другое (что именно)||
|17|Какие подходы использовал для работы с UI на проектах?
· Вёрстка в коде (простановка фреймов вручную)
· nib/xib/storyboards (нибы, ксибы, сториборды)
· autoresizing masks (авторесайзинг маскс)
· AutoLayout (автолейаут)
· SwiftUI (свифт юай)
· Другое (что именно)||
|18|Какой есть опыт работы с фреймворками баз данных? Назови основные сущности CoreData (кор дата) – отметить, что озвучил:
· NSPersistentStore (storage, хранилище)
· NSManagedObjectModel (модель)
· NSPersistentStoreCoordinator (координатор)
· NSManagedObjectContext (контекст)
· NSManagedObject (объект)
· Другое (что именно)||
|19|Какова сложность бинарного поиска на упорядоченном массиве в ArrayList (эррэй лист)? Варианты:
· O(log(N)) — о логарифм эн
· Другое (что именно)||
|Архитектура и процессы|||
|20|Расшифруй аббревиатуру SOLID (сОлид) – отметить, что озвучил:
· Single Responsibility — принцип единственной ответственности
· Open-Closed — принцип открытости/закрытости
· Liskov Substitution — принцип подстановки/заменяемости Барбары Лисков (если назовут только фамилию, то спросить: это мужчина или женщина)
· Interface Segregation — принцип разделения интерфейсов
· Dependency Inversion — принцип инверсии зависимостей
· Другое (что именно)||
|21|С какими архитектурными подходами имел дело на платформе? Отметить, если упомянул про Clean Architecture. Варианты:
· MVC
· MVP
· MVVM
· VIPER
· Другое (что именно)||
|22|Есть ли опыт написания тестов. Если да – каких, и что такое пирамида тестирования? Варианты:
· Юнит-тесты
· UI-тесты
· Интеграционные тесты
· Другие (какие именно)||