Матрица компетенций: iOS

Hard skills

Skill Passport — iOS
Swift и базовая модель языкаПишет функции, структуры и классы по готовой декомпозиции; различает `let` и `var`, value и reference types на простом примере. Корректно работает с `Optional` через `if let`/`guard let`, не использует force unwrap без причины.
UI: SwiftUI и UIKitСобирает экран по готовому макету: базовые `View`, layout, navigation и binding в SwiftUI либо `UIViewController`/Auto Layout в UIKit. Понимает, что UI обновляется на главном потоке.
Жизненный цикл приложения и iOS-платформаОбъясняет состояния foreground/background/inactive и назначение `App`/Scene lifecycle. По инструкции добавляет permission в `Info.plist` и обрабатывает простой системный callback.
Сеть и работа с APIВыполняет `URLSession`-запрос по готовому примеру, декодирует простой JSON через `Codable`, проверяет HTTP status code и обрабатывает ошибку сети.
Хранение данных и кешированиеСохраняет простое значение в `UserDefaults` по готовому примеру и объясняет, почему пароль/токен нельзя хранить там в открытом виде.
Конкурентность и асинхронностьИспользует `async`/`await` для готового асинхронного вызова и знает, что обновление UI выполняется на `MainActor`/главном потоке.
Архитектура, зависимости и качество кодаСледует существующей структуре проекта и по примеру выносит бизнес-логику из view/controller. Пишет unit-тест на простую функцию и различает unit- и UI-тест.
Сборка, релиз, наблюдаемость и качество приложенияЗапускает проект в Xcode, понимает назначение scheme и configuration Debug/Release, читает crash log по инструкции. Проверяет базовую доступность: Dynamic Type, VoiceOver label и минимальный touch target по чек-листу.
Общее
Язык и основыSwift, базовый Objective‑C, жизненный цикл UIViewController, AutoLayout
DevOpsИспользует Git, CocoaPods/SPM, базовые сборочные скрипты
UX/UIСледует Human Interface Guidelines, верстает интерфейсы
Качество и Безопасность
ТестированиеЮнит‑тесты (XCTest), UI‑тесты
Разработка ПО
Фреймворки и библиотекиUIKit, Foundation, Alamofire, работа с REST‑API

Soft skills

Общее
Бизнес и коммуникацииРаботает по готовым задачам, обсуждает требования с лидом
ЛидерствоПолучает наставничество
Skill Passport — Автономность и глубина
Автономность и масштаб задачОписывает задачи, которые выполнял по чёткой постановке от старшего коллеги или тимлида — конкретные тикеты с готовой декомпозицией. Роль в рассказе — исполнитель отдельных задач; не называет случая, где сам отвечал за результат целой фичи или модуля, а не за один тикет внутри неё.
Глубина технических решенийОписывает ситуацию выбора, но воспроизводит готовое решение (предложенное старшим коллегой, документацией или очевидное по шаблону) — либо называет только один рассмотренный вариант без реального сравнения, либо не может объяснить, почему выбран именно он, а не альтернатива.

Типовые задачи

Это только часть типовых задач

Зарегистрируйтесь, чтобы открыть остальные и попробовать тренажёр с таймером.

Зарегистрироваться