Просмотр вакансии

Сегодня 01-07-2026 16:59
01.07.2026, 11:25

Разработчик мобильного приложения (Android - Kotlin, iOS - Swift)

Работодатель: KONNEKTU

KONNEKTU

Город: Москва
Занятость: Полная, 5/2
Опыт работы: Более 6 лет

Ищем в команду опытного full stack mobile developer.

Мы в KonnektU разрабатываем CRM (мобильное приложение) для фармацевтических компаний (медицинских представителей) для организации их работы, автоматизации бизнес-процессов (осмотры, чек-листы, отчёты, подписи, синхронизация данных) в офлайн-режиме.

Имеем государственную аккредитацию в области ИТ, являемся партнером MTC и резидентами Сколково.

ЗАДАЧИ:

  • Разработка и поддержка двух нативных приложений (Android на Kotlin, iOS на Swift) — написание нового кода, доработка существующего, обеспечение паритета функциональности между платформами.
  • Работа с офлайн-синхронизацией — реализация надёжного обмена данными с сервером при ограниченной связи, кэширование, разрешение конфликтов.
  • Реализация сервер-driven UI — приём конфигураций с сервера, динамическое построение форм/экранов, валидаций, навигации без перевыпуска приложения.
  • Интеграция с локальной базой данных— проектирование объектной модели, миграции, оптимизация запросов.
  • Интеграция с веб-контентом — использование WebView (WKWebView) для отображения HTML-форм, организация мостов (бриджей) между JavaScript и нативным кодом для доступа к локальным данным и вызова нативных функций.
  • Взаимодействие с бэкендом — описание и согласование API (желательно через OpenAPI/Swagger), использование моков для параллельной разработки, генерация клиентских моделей.
  • Обеспечение безопасности — хранение токенов в Keychain/KeyStore, подпись запросов, TLS, защита от повторов (опыт с кастомным шифрованием для Bluetooth-протокола приветствуется).
  • Тестирование — написание unit-тестов (бизнес-логика, валидаторы) и UI-интеграционных тестов (сквозные сценарии на симуляторах с моками сервисов).
  • Участие в архитектурных решениях — выбор паттернов (MVP, MVVM, VIPER), организация слоёв (репозитории, use cases), адаптация под современные фреймворки (SwiftUI, Compose, App Intents).
  • Работа с публикацией — сборка, подпись, выкладка (процесс уже отлажен, но требуются знания).
  • Поддержка существующего кода — правка багов, рефакторинг, перенос фич с одной платформы на другую.
  • Коммуникация — участие в обсуждении требований с аналитиками, продактом, проджектами.
  • Отслеживание трендов — оценка кроссплатформенных решений (Flutter, KMP) и их применимость для продукта.
ТРЕБОВАНИЯ:
  • Android: Kotlin.
  • iOS: Swift (включая SwiftUI), UIKit, работа с Core Data или SwiftData (опыт с Realm будет плюсом).
  • Архитектурные паттерны: MVVM (основной), MVP, MVC – с пониманием их сильных и слабых сторон.
  • Базы данных: Realm (понимание принципов объектных БД, миграций, многопоточности важно).
  • Сеть: REST, работа с URLSession, Alamofire / KTOR (для Android — KTOR приветствуется как кросс-платформенное решение).
  • Безопасность: Keychain / KeyStore, TLS, подпись запросов.

Дополнительные технические навыки (важные для продукта):

  • Server-driven UI: опыт реализации динамических форм по конфигурации с сервера.
  • WebView и JavaScript Bridge: работа с WKWebView / WebView, написание мостов для вызова нативных методов из JS и передачи данных обратно (понимание KVC, KVO, рефлексии в iOS; аналоги в Android).
  • Офлайн-синхронизация: опыт проектирования фоновых задач, очередей, разрешения конфликтов при слабой связи.
  • Работа с OpenAPI / Swagger: генерация клиентских моделей, использование спецификаций для параллельной разработки.
  • Тестирование: JUnit / XCTest, Espresso / XCUITest, моки, стабы.
  • Инструменты: Git, CI/CD (опыт с настройкой сборки приветствуется), Ansible (для DevOps-задач).
  • Кроссплатформенность: понимание плюсов/минусов Flutter vs KMP vs натив; в перспективе компания рассматривает Flutter или KMP, поэтому взгляд кандидата на эту тему важен.

УСЛОВИЯ:

  • работа с интересным продуктом в ИТ компании;
  • современный стек, грамотная команда, отлаженные процессы;
  • официальное трудоустройство согласно ТК РФ (оформление трудовых отношений только по трудовому договору);
  • график работы: гибрид, c 9:00 - 18:00 по МСК;

Адрес: Москва, 2-я Звенигородская улица, 13с43

 

Откликнуться на вакансию

Дата
01.07 05.07
USD
2.9041 2.9062
EUR
3.3099 3.3096
RUB
3.7384 3.731
CNY
4.2854 4.2833
CHF
3.5871 3.5857
GBP
3.8437 3.85
PLN
7.6991 7.7059
Минск
Ночью: °C
Утром: °C
Днем: °C
Вечером: °C

Сейчас: Скорость ветра: 5-7 м/c Атм. давление: 758 мм.рт.ст Влажность: 90%

Спецпредложения