Мы ищем опытного Senior iOS Developer, который усилит нашу команду разработки мобильных продуктов. Нам нужен инженер, способный не только писать чистый нативный код, но и находить нестандартные гибкие решения (включая PWA-технологии) для обеспечения бесперебойного доступа пользователей к нашим сервисам. Вы будете отвечать за весь жизненный цикл приложений — от архитектуры до релиза в App Store, активно используя современные AI-инструменты для ускорения разработки.
Основные функции и обязанности (Key Responsibilities)
- Разработка и проектирование архитектуры: Разработка высоконагруженных и надежных iOS-приложений на базе однонаправленной архитектуры (Unidirectional/Reducer) и SwiftUI.
- Работа с PWA и WebView: Сборка, кастомизация и дистрибуция Progressive Web Apps (PWA) под iOS, создание защищенных контейнеров (WKWebView), настройка JS-to-Native мостов.
- Интеграция сторонних SDK: Настройка и глубокая интеграция системы мобильной аналитики, атрибуции и диплинкинга AppsFlyer, а также реализация сложных сценариев Push-уведомлений (Rich/Silent Push).
- Жизненный цикл ПО и релизы: Полное сопровождение процессов публикации, обновления и прохождения ревью в App Store. Митигация рисков блокировок приложений (Cloaking, динамическая подмена контента).
- AI-driven разработка: Активное внедрение и использование LLM-моделей (ChatGPT, GitHub Copilot и др.) для генерации кода, оптимизации рефакторинга, автоматического написания документации и ускорения код-ревью.
Профессиональные компетенции и требования (Requirements)
Опыт и базовые навыки:
- Коммерческий опыт: От 3-х лет подтвержденного опыта создания продакшн-приложений для iOS на языке Swift, наличие успешно выпущенных продуктов в App Store.
- Экспертный SwiftUI: Создание сложных кастомных компонентов исключительно в коде (без использования Storyboards).
Архитектура и многопоточность:
- Глубокое знание TCA: Доказанный практический опыт работы на уровне продакшна с архитектурой The Composable Architecture (TCA) и экосистемой Point-Free (swift-dependencies, case-paths, snapshot-testing) ИЛИ аналогичный глубокий опыт работы с другой однонаправленной архитектурой плюс четкий план быстрого освоения TCA.
- Строгий Swift 6 Concurrency: Отличные знания многопоточности в условиях strict checking: async/await, actors, структурированная многопоточность (TaskGroup), протокол Sendable, кооперативная отмена и дисциплина Вы должны понимать безопасность данных при параллельном доступе (data-race safety) на уровне логики, а не только синтаксиса.
Тестирование, сеть и безопасность:
- Культура Test-First: Истинная дисциплина написания тестов. Умение писать фейки (fakes) для зависимостей; отношение к непротестированному коду как к незавершенному. Уверенное владение Swift Testing, XCTest/XCUITest и снэпшот-тестированием.
- Профессиональная работа с сетью: Использование URLSession совместно с async/await, управление стратегиями кодирования/декодирования JSON, надежная обработка и маппинг ошибок HTTP, реализация паттернов отказоустойчивости и повторных запросов (retry patterns).
- Безопасность iOS (Security): Знание основ безопасности iOS: работа с Keychain (Security.framework), безопасная обработка токенов и развитое чутье на то, какие данные категорически нельзя сохранять на устройстве или логировать.
Что будет плюсом (Nice to have)
- Инструменты AI (LLM): Практический опыт использования больших языковых моделей (LLM) как повседневного ассистента инженера: для ускорения написания кода, автодокументирования (Swagger, Markdown, Confluence), написания юнит-тестов и анализа багов.
- Глубокое понимание подсистем WKWebView / WebKit: Опыт работы на уровне internals — управление куками (WKHTTPCookieStore), изоляция данных (WKWebsiteDataStore), а также кастомная обработка заголовков Set-Cookie и жизненного цикла сессий.
- Работа с Network.framework: Практический опыт использования NWPathMonitor для создания адаптивного интерфейса, чутко реагирующего на изменения или потерю сетевого подключения (connectivity-aware UX).
- Глубокие знания Xcode Build System: Уверенное владение конфигурационными файлами .xcconfig, управление зависимостями через Swift Package Manager (SPM), понимание работы Swift macros и опыт настройки CI-пайплайнов под iOS.
- Чтение кода на Kotlin/Android: Способность читать и понимать кодовую базу под Android для обеспечения архитектурного и функционального паритета (cross-platform parity) между приложениями.
- Локализация и i18n: Опыт локализации приложений для нелатинских рынков, включая кастомное форматирование валют, телефонных номеров и дат в соответствии с региональными стандартами.
- Экспертиза в PWA и Web-компонентах: Практический опыт сборки PWA-приложений под iOS, оптимизация производительности WKWebView и адаптация веб-интерфейсов под требования гайдлайнов Apple.
- Опыт в Mobile AdTech и аналитике: Глубокая экспертиза в мобильном маркетинге и атрибуции (в первую очередь AppsFlyer или аналогичные платформы).
- Финтех и регуляторика: Опыт работы в доменах FinTech / Lending, в том числе понимание чувствительности персональных данных (PII) и регуляторных требований к безопасности финансовых приложений.
Тех. стек
Swift 5/6 · SwiftUI · The Composable · swift-dependencies · Swift Concurrency (actors, structured concurrency) · URLSession · Keychain / Security.framework · WKWebView · Network.framework · Swift Testing · XCTest / XCUITest · swift-snapshot-testing · Swift Package Manager · .xcconfig · AppsFlyer · iOS 17+ · Xcode 16
Что мы предлагаем:
- Полностью удаленную работу из любой точки мира.
- График работы с пн по пт с гибким началом и окончанием рабочего дня.
- Отсутствие тотальной бюрократии и микроменеджмента.
- 28 оплачиваемых Days off в году.
- Мотивация - фиксированный оклад.
- Заработная плата обсуждается по результатам собеседования.
- Работа в русскоязычной команде с сильными техническими специалистами.
- Возможность влиять на продукт и технологический стек.
- Доступ к cutting-edge технологиям в сфере финтеха и криптовалют.