Senior Android-developer

15 сентября 2021    84
Откликнуться

Функции:

  • разработка мобильных приложений на языках Kotlin/Java (Android);
  • поиск и устранение ошибок в коде разработанных ранее мобильных приложений;
  • разработка документации разработчика (спецификации, отчеты);
  • написание unit-test;
  • консультация аналитиков по техническим, архитектурным решениям.

Требования:

  • опыт коммерческой разработки под Android от 4-х лет;
  • уверенное знание Kotlin/Java Core;
  • уверенное владение ООП и опыт работы с шаблонами проектирования MVP, MVVM, MVI;
  • знание базовых структур, алгоритмов, паттернов;
  • Умение писать чистый код используя принципы SOLID, DRY, KISS.

Преимуществом будет:

  • Опыт работы с Coroutines, RxJava, Data Binding, Dagger2.

Условия:

  • оформление согласно ТК РФ;
  • полностью “белая” з/п, премии с соответствии с достигнутыми результатами работ;
  • ДМС (после успешного прохождения испытательного срока);
  • профессиональный и карьерный рост;
  • регулярные корпоративные мероприятия;
  • участие в конференциях и митапах;
  • достойная оплата труда;
  • чай/кофе/печеньки в офисе;
  • возможен гибкий график, частично удаленная работа.

Дополнительно

Технологии разработки:

Языки разработки:

  • Kotlin;
  • Java, только для поддержки легаси кода и не рекомендуется для разработки в новых или существующих проектах.

Архитектурные паттерны:

  • MVP - Model-View-Presenter, в основе которой лежит framework "Moxy" v2+;
  • MVVM - Model-View-ViewModel, архитектурный паттерн, придуманный компанией Microsoft, и предлагаемый компанией Google, как основной паттерн разработки под Android и входящий в набор библиотек Jetpack Architecture Components;
  • preMVI-SResult - паттерн разработки основанный на архитектуры MVI-Model-View-Intent, но без применения реактивного программирования, где основным компонентам являются события (Events) передаваемые от View, и состояния (States), которые принимает view, в ответ на получаемые события. Таким образом реализуется схема Unidirectional Data Flow.

Многопоточность и асинхронные вызовы:

  • Kotlin Coroutines, рекомендуется для разработки MVVM/preMVI проектов;
  • RxJava3, рекомендуется использовать в связке с MVP-паттерном.

Навигация:

  • Google Navigation Component;
  • Cicerone, рекомендуется во всех небольших проектах компании, в связке с MVP & RxJava;
  • ScreenNavigator - кастомный навигатор разработанный компанией KRit.

Dependency Injection (DI) - Инъекция(внедрение) зависимостей:

  • Dagger;
  • KODI- DI-контейнер, написанный на языке KOTLIN, с кодогенерацией.

Data Binding - технология предложенная компанией Google:

  • ERB - готовый набор расширений для связывания данных на андроид.

View Binding

Foresight Mobile Platform - набор библиотек из коробки (Network, DB, StateAPI, etc..), для работы с backend (источниками данных).

Kotpref - рекомендуется для использования как key-value (SharedPreference) хранилище.

Room DB - SQL-adapter, рекомендуется для хранения внутренних данных приложения.

Retrofit2 - HTTP-библиотека для работы с удаленными серверами.

Подписывайтесь на наш телеграм-канал @remotelist, чтобы всегда быть в курсе новых вакансий! Дайджесты с новыми вакансиями появляются каждые 2-3 часа.

Еженедельная рассылка топ-15 самых просматриваемых вакансий сайта. Письмо приходит каждое воскресенье.