Senior / Lead Mobile SDK Engineer (Kotlin Multiplatform)
Навыки: Kotlin, Kotlin Multiplatform, Flow, Google Firebase, Разработка под iOS, Разработка под Android, Flutter, Разработка мобильных приложений, Coroutines, Python. Квалификация: Lead. Специализации: Инженер встраиваемых систем.
YoloPrice - это embeddable e-commerce платформа, которая встраивается в сторонние мобильные приложения и берет на себя ключевую часть логики: поиск, данные, синхронизацию и работу приложения в online.
Мы развиваем мобильный SDK как один из основных продуктов компании.
Это технологический слой внутри клиентских приложений, который берет на себя работу с бизнес-логикой, данными и сетевыми протоколами, взаимодействует с платформой через API и должен быть быстрым, надежным и незаметным для пользователя.
Сейчас мы приступаем к переработке мобильного SDK с учетом накопленного опыта и нашего нового видения ключевой ценности продукта. В основе разработки уже спроектированная архитектура Kotlin Multiplatform. Наша цель создать более гибкую, надежную и масштабируемую мобильную платформу для интеграции в сторонние приложения.
Нам нужен самостоятельный инженер, которому интересно взять на себя ответственность за ключевую технологическую часть продукта, реализовать новую версию SDK и обеспечить ее дальнейшее развитие и стабильную работу.
Что вы будете делать
-
Реализовывать и развивать SDK, проводя рефакторинг существующей архитектуры Kotlin Multiplatform;
-
Развивать сетевой и data layer: управление запросами, retry-стратегии, throttling, обработку ошибок, кэширование, локальное хранение и синхронизацию данных;
-
Разрабатывать асинхронные пайплайны с контролем конкурентности и latency, реализовывать фоновые операции и управление состоянием данных;
-
Реализовывать realtime-взаимодействие и persistent connections, включая механизмы восстановления соединения, а также интеграцию нативной и веб-части через WebView и взаимодействие с backend;
-
Обеспечивать корректную интеграцию и работу SDK в сторонних приложениях: заниматься тестированием, диагностикой, мониторингом и оптимизацией производительности и потребления ресурсов.
Что важно
-
Готовы проверить свой скилл разработки на Kotlin? Мы ожидаем 81 level;
-
Практический опыт с Kotlin Multiplatform - не UI, на системном уровне;
-
Иметь опыт разработки SDK, библиотек, framework или сложных переиспользуемых мобильных компонентов;
-
Знать как интегрировать мобильные библиотеки или SDK в сторонние приложения;
-
Регулярно практиковать проектирование и реализовывать архитектуру мобильных приложений или платформенных решений;
-
Быть, не теоретически знакомым с асинхронностью и конкурентностью (Kotlin Coroutines / Flow);, скорее ежедневно работать с задачами такого рода;
-
Опыт проектирования сетевого взаимодействия на уровне production, как минимум применять модель OSI при разработке сервисов;
-
Понимание построения data-heavy систем на клиентской стороне: кэширование, синхронизация, консистентность данных;
-
Не забывать самостоятельно реализовывать технические решения, тестировать и отлаживать их;
-
Навыки системного debugging и поиска первопричин проблем ≠ закрыть багрепорт тикет.
Будет плюсом:
-
Если вы разрабатывали и поддерживали приложения с DAU > 1000;
-
Работали со Swift и Swift Concurrency;
-
Имели опыт интеграции WebView и взаимодействия нативной и веб-части;
-
Вам доводилось работать с realtime-коммуникациями, streaming и persistent connections;
-
Сталкивались с SQLDelight, OkHttp и аналогичными инструментами;
-
Имеете представление о работе с поисковыми системами, ранжированием или e-commerce системами.
За какой результат вы будете отвечать
Обеспечить стабильную и предсказуемую работу SDK 2.0 в собственных и сторонних мобильных приложениях.
Результатом должны стать:
-
Корректная работа всех основных сценариев SDK без неожиданных побочных эффектов;
-
Предсказуемое управление состояниями, запросами и асинхронными операциями без дублирования операций и неконтролируемого накопления запросов;
-
Надёжная работа сетевого слоя, хранения, кэширования и синхронизации данных;
-
Стабильное взаимодействие SDK с host-приложением и его компонентами;
-
Корректная работа realtime-соединений и WebView-интеграций;
-
Контролируемое потребление ресурсов и отсутствие существенного негативного влияния на производительность host-приложения;
-
Автоматизированное тестирование, диагностика и мониторинг;
-
Понятное версионирование, документация и процесс выпуска новых версий.
Качество SDK будем оценивать через работу бизнес-продуктов, компонентой которых он является и легкость встраивания в сторонние приложения, в том числе используя технические метрики, которые вы самостоятельно спроектируете.
Что уже есть
-
Production backend с алгоритмами поиска и ранжирования;
-
300+ магазинов;
-
Работающий мобильный SDK и существующая инфраструктура;
-
Приложения на iOS и Android (скачать yoloprice.com);
-
Технологический стек: Kotlin, Swift, KMP, SQLDelight, OkHttp, Flutter, Python.
Как устроена работа
-
Вы будете единственным мобильным инженером компании и возьмете на себя полную техническую ответственность за мобильный SDK;
-
Архитектура SDK 2.0 уже спроектирована. Предстоит реализовать её, довести SDK до production и в дальнейшем отвечать за его техническое развитие и качество;
-
Вы будете самостоятельно принимать технические решения в рамках мобильной части продукта и участвовать в развитии архитектуры по мере реализации;
-
По вопросам API, контрактов и взаимодействия компонентов предстоит тесно работать с backend-инженером, в том числе проводить совместные code review;
-
Вы самостоятельно ведете работу над SDK — от анализа и проработки решений до реализации, тестирования, выпуска и последующей поддержки.
Больше о нашем продукте
Продукт: https://yoloprice.com
Читайте о нас на Хабре: https://habr.com/ru/articles/929192/
Формат сотрудничества
-
Удалённая работа или гибридный формат. Предпочтительно, но не принципиально — Москва, Екатеринбург или Нижний Новгород, чтобы иметь возможность периодически встречаться лично. Мы ценим взаимодействие в нашей небольшой команде.
-
Оформление сотрудничества — через ИП;
-
Оплата — 2 000–2 500 ₽ за час работы;
-
Максимальный месячный бюджет — 420 000 ₽.
openqareer не кадровое агентство: вакансия собрана с открытого источника, отклик подаётся на сайте работодателя.