{"id":3813345,"url":"https://alion.io/job/wiam-senior-ios-developer","title":"Senior iOS Developer","company":{"id":2195,"name":"Wiam","domain":"wiam.group","url":"https://alion.io/company/wiam","size_band":null,"is_staffing_agency":false,"employer_type":"direct","is_intermediary":false,"listed_via":null,"ats_vendor":"HeadHunter","truth_index":null},"role":"Mobile","role_family":"Mobile","seniority":"senior","employment_type":"full_time","work_mode":"remote","remote_scope":"stated_regions","remote_scope_basis":"board_field","remote_working_hours":null,"hiring_geo_confidence":"inferred","locations":["Glubokoye, Belarus"],"countries":["BY"],"hiring_countries":["RU","BY","KZ","KG","AM"],"hiring_countries_total":5,"salary":null,"salary_estimate":null,"experience_years_min":3,"visa_sponsorship":false,"relocation_package":false,"has_equity":false,"technologies":[{"name":"AppsFlyer SDK","optional":false},{"name":"ChatGPT","optional":false},{"name":"Copilot","optional":false},{"name":"GitHub","optional":false},{"name":"LLM","optional":false},{"name":"PWA","optional":false},{"name":"Swift","optional":false},{"name":"Swift Testing","optional":false},{"name":"SwiftUI","optional":false},{"name":"XCTest","optional":false},{"name":"XCUITest","optional":false},{"name":"Confluence","optional":true},{"name":"Kotlin","optional":true},{"name":"SPM","optional":true},{"name":"Swagger","optional":true},{"name":"Swift Concurrency","optional":true}],"status":"live","first_seen_at":"2026-11-05T15:24:39Z","employer_posted_date":null,"last_verified_at":"2026-11-05T15:24:39Z","board_verified":false,"closed_at":null,"days_open":1,"trust":{"level":"not_scored","repost_count":null,"flags":[],"days_open":1},"description":"Мы ищем опытного Senior iOS Developer, который усилит нашу команду разработки мобильных продуктов. Нам нужен инженер, способный не только писать чистый нативный код, но и находить нестандартные гибкие решения (включая PWA-технологии) для обеспечения бесперебойного доступа пользователей к нашим сервисам. Вы будете отвечать за весь жизненный цикл приложений - от архитектуры до релиза в App Store, активно используя современные AI-инструменты для ускорения разработки.\nОсновные функции и обязанности (Key Responsibilities)\nРазработка и проектирование архитектуры: Разработка высоконагруженных и надежных iOS-приложений на базе однонаправленной архитектуры (Unidirectional/Reducer) и SwiftUI.\nРабота с PWA и WebView: Сборка, кастомизация и дистрибуция Progressive Web Apps (PWA) под iOS, создание защищенных контейнеров (WKWebView), настройка JS-to-Native мостов.\nИнтеграция сторонних SDK: Настройка и глубокая интеграция системы мобильной аналитики, атрибуции и диплинкинга AppsFlyer, а также реализация сложных сценариев Push-уведомлений (Rich/Silent Push).\nЖизненный цикл ПО и релизы: Полное сопровождение процессов публикации, обновления и прохождения ревью в App Store. Митигация рисков блокировок приложений (Cloaking, динамическая подмена контента).\nAI-driven разработка: Активное внедрение и использование LLM-моделей (ChatGPT, GitHub Copilot и др.) для генерации кода, оптимизации рефакторинга, автоматического написания документации и ускорения код-ревью.\nПрофессиональные компетенции и требования (Requirements)\nОпыт и базовые навыки:\nКоммерческий опыт: От 3-х лет подтвержденного опыта создания продакшн-приложений для iOS на языке Swift, наличие успешно выпущенных продуктов в App Store.\nЭкспертный SwiftUI: Создание сложных кастомных компонентов исключительно в коде (без использования Storyboards).\nАрхитектура и многопоточность:\nГлубокое знание TCA: Доказанный практический опыт работы на уровне продакшна с архитектурой The Composable Architecture (TCA) и экосистемой Point-Free (swift-dependencies, case-paths, snapshot-testing) ИЛИ аналогичный глубокий опыт работы с другой однонаправленной архитектурой плюс четкий план быстрого освоения TCA.\nСтрогий Swift 6 Concurrency: Отличные знания многопоточности в условиях strict checking: async/await, actors, структурированная многопоточность (TaskGroup), протокол Sendable, кооперативная отмена и дисциплина Вы должны понимать безопасность данных при параллельном доступе (data-race safety) на уровне логики, а не только синтаксиса.\nТестирование, сеть и безопасность:\nКультура Test-First: Истинная дисциплина написания тестов. Умение писать фейки (fakes) для зависимостей; отношение к непротестированному коду как к незавершенному. Уверенное владение Swift Testing, XCTest/XCUITest и снэпшот-тестированием.\nПрофессиональная работа с сетью: Использование URLSession совместно с async/await, управление стратегиями кодирования/декодирования JSON, надежная обработка и маппинг ошибок HTTP, реализация паттернов отказоустойчивости и повторных запросов (retry patterns).\nБезопасность iOS (Security): Знание основ безопасности iOS: работа с Keychain (Security.framework), безопасная обработка токенов и развитое чутье на то, какие данные категорически нельзя сохранять на устройстве или логировать.\nЧто будет плюсом (Nice to have)\nИнструменты AI (LLM): Практический опыт использования больших языковых моделей (LLM) как повседневного ассистента инженера: для ускорения написания кода, автодокументирования (Swagger, Markdown, Confluence), написания юнит-тестов и анализа багов.\nГлубокое понимание подсистем WKWebView / WebKit: Опыт работы на уровне internals - управление куками (WKHTTPCookieStore), изоляция данных (WKWebsiteDataStore), а также кастомная обработка заголовков Set-Cookie и жизненного цикла сессий.\nРабота с Network.framework: Практический опыт использования NWPathMonitor для создания адаптивного интерфейса, чутко реагирующего на изменения или потерю сетевого подключения (connectivity-aware UX).\nГлубокие знания Xcode Build System: Уверенное владение конфигурационными файлами .xcconfig, управление зависимостями через Swift Package Manager (SPM), понимание работы Swift macros и опыт настройки CI-пайплайнов под iOS.\nЧтение кода на Kotlin/Android: Способность читать и понимать кодовую базу под Android для обеспечения архитектурного и функционального паритета (cross-platform parity) между приложениями.\nЛокализация и i18n: Опыт локализации приложений для нелатинских рынков, включая кастомное форматирование валют, телефонных номеров и дат в соответствии с региональными стандартами.\nЭкспертиза в PWA и Web-компонентах: Практический опыт сборки PWA-приложений под iOS, оптимизация производительности WKWebView и адаптация веб-интерфейсов под требования гайдлайнов Apple.\nОпыт в Mobile AdTech и аналитике: Глубокая экспертиза в мобильном маркетинге и атрибуции (в первую очередь AppsFlyer или аналогичные платформы).\nФинтех и регуляторика: Опыт работы в доменах FinTech / Lending, в том числе понимание чувствительности персональных данных (PII) и регуляторных требований к безопасности финансовых приложений.\nТех. стек\nSwift 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\nЧто мы предлагаем:\nПолностью удаленную работу из любой точки мира.\nГрафик работы с пн по пт с гибким началом и окончанием рабочего дня.\nОтсутствие тотальной бюрократии и микроменеджмента.\n28 оплачиваемых Days off в году.\nМотивация - фиксированный оклад.\nЗаработная плата обсуждается по результатам собеседования.\nРабота в русскоязычной команде с сильными техническими специалистами.\nВозможность влиять на продукт и технологический стек.\nДоступ к cutting-edge технологиям в сфере финтеха и криптовалют.","description_format":"text","description_chars":5918,"description_truncated":false,"requirements":{"experience_years_min":3,"management_years_min":null,"team_size_min":null,"manages_managers":false,"education":null,"security_clearance":false,"languages":[{"language":"Russian","level":"Advanced (C1)","optional":false}]},"benefits":[],"hiring_locations":[{"name":"Russia","iso":"RU","kind":"country"},{"name":"Belarus","iso":"BY","kind":"region"},{"name":"Kazakhstan","iso":"KZ","kind":"region"},{"name":"Kyrgyzstan","iso":"KG","kind":"region"},{"name":"Armenia","iso":"AM","kind":"region"}],"hiring_excludes":[],"relocation_offered":false,"industries":["Financial Software & Embedded Finance","Consumer Loans & Pawnshops"],"lifecycle":[{"event":"open","at":"2026-11-05T15:24:39Z"}],"visa":[],"liveness":{"score":90,"band":"hot","label":"Hiring now","p_open":1,"p_active":0.903,"p_room":1,"age_days":1,"expected_fill_days":30,"reasons":["seen:1","velocity","win:early","comp:attention"],"computed_at":"2026-11-07T05:47:08Z"},"pay":null,"html_url":"https://alion.io/job/wiam-senior-ios-developer","json_url":"https://alion.io/job/wiam-senior-ios-developer.json","meta":{"generated_at":"2026-11-07T07:26:13Z","cache_seconds":300,"methodology":"https://alion.io/methodology","terms":"https://alion.io/terms","contact":"https://alion.io/contact","api":"https://alion.io/developers","about":"Alion is a live layer of people, companies and AI agents: who they are, whether they are real and active right now, what they do and how to work with them, readable by people and by agents and paid per call.","catalog":"https://alion.io/catalog.json","usage":{"tier":"crawler_verified","counted_by":"address","units_charged":1,"used_today":2546,"day_limit":null,"remaining_today":null,"minute_limit":300,"resets_at":"2026-11-08T00:00:00Z"}},"offers":[{"id":"company.slices","title":"One company in depth, by slice","status":"live","price":{"credits":0.02,"usd":0.002,"plus_per_slice":{"credits":0.05,"usd":0.005}},"unit":"per company, plus each slice with data","note":"the employer in depth","call":{"mcp_tool":"get_company","arguments":{"id":2195},"rest":"https://alion.io/mcp/rest/get_company?id=2195"},"human":"https://alion.io/catalog?offer=company.slices&for=job%2Fwiam-senior-ios-developer"},{"id":"market.stats","title":"A market slice: pay, demand and time to fill","status":"live","price":{"credits":1,"usd":0.1},"unit":"per slice","note":"pay, demand and time to fill for this role and place","call":{"mcp_tool":"market_stats"},"human":"https://alion.io/catalog?offer=market.stats&for=job%2Fwiam-senior-ios-developer"},{"id":"job.search","title":"Open jobs by role, technology, place, pay and visa","status":"live","price":{"credits":0.02,"usd":0.002},"unit":"per posting in a list","note":"similar open postings","call":{"mcp_tool":"search_jobs"},"human":"https://alion.io/catalog?offer=job.search&for=job%2Fwiam-senior-ios-developer"},{"id":"company.verify","title":"Is this company real and active right now","status":"pilot","price":null,"unit":"per company","request":{"url":"https://alion.io/catalog/request","method":"POST","body":"{\"offer\": \"company.verify\", \"for\": \"job/wiam-senior-ios-developer\", \"note\": \"what you need it for\"}"},"human":"https://alion.io/catalog?offer=company.verify&for=job%2Fwiam-senior-ios-developer"}],"agent":{"mcp":"https://alion.io/mcp/jobs","mcp_open":"https://alion.io/mcp/open","next":[{"tool":"get_job","arguments":{"id":3813345}},{"tool":"search_jobs","arguments":{"company":"wiam.group","detail":"compact"}},{"tool":"match_people","arguments":{"job_id":3813345},"note":"people open to offers who fit this vacancy"}],"note":"The same data through MCP tools: https://alion.io/mcp/open needs no sign-in (compact searches, postings, people); https://alion.io/mcp with an Alion account has everything. Docs: https://alion.io/developers"}}