Войти

Middle Android Developer

DevCats (O!Dengi)
Компания DevCats (O!Dengi)
Тип Офис / Бишкек
Оклад От 110000 KGS в месяц
Описание вакансии

Обязанности:

- Понимать и полноценно применять в работе ООП, базовые структуры данных и алгоритмы, основные паттерны проектирования;

- Понимать и уметь применять паттерны разработки MVC, MVP, MVVM;

- Понимать и уметь применять в работе Android Architecture Component;

- Уметь тестировать собственный код и разбираться в чужом коде;

- Уметь реализовать свои кастомные view-компоненты;

- Уметь работать с RoomDB, SharedPreferences, Local storage;

- Понимать и уметь применять в работе DI (Dagger/Hilt/Koin);

- Понимать и уметь применять в работе API: Retrofit, OkHttp;

- Понимать и уметь применять в работе основные команды GIT;

- Понимать и уметь применять в работе RxAndroid/Coroutines.


Требования:

1. Знания и навыки в ООП и ФП:

  * Глубокое понимание принципов объектно-ориентированного и функционального программирования.

  * Опыт работы с базовыми структурами данных и алгоритмами.

  * Владение основными паттернами проектирования.

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

  * Опыт работы с архитектурными паттернами MVVM, MVC, MVP, VIPER, MVI.

3. Тестирование:

  * Умение тестировать собственный код.

  * Навыки покрытия кода UI и Unit тестами.

4. Работа с данными:

  * Понимание принципов шифрования данных.

5. Разработка пользовательского интерфейса:

  * Умение строить сложные layout'ы.

6. Подходы DI (Dependency Injection):

  * Понимание и применение принципов внедрения зависимостей в разработке.

7. Работа с REST API:

  * Опыт работы с RESTful сервисами.

8. Контроль версий:

  * Уверенное владение системой контроля версий GIT.

  * Понимание основных концепций работы с системами контроля версий.

9. Реактивное программирование:

  * Понимание и умение применять принципы реактивного программирования.


Дополнительные требования:

* Высшее образование в области компьютерных наук или эквивалентный опыт работы.

* Способность работать в команде и эффективно коммуницировать с коллегами.

* Умение решать сложные задачи и находить оптимальные решения.

* Желание учиться и развиваться в профессиональной сфере.


P.S. Зарплата обсуждается по итогам собеседования