АВ
Айзат В.
Мужчина, 26 лет
Россия, Москва, UTC+3
Ставка
3 506,49 Р/час
НДС не облагается
Специалист доступен с 3 июля 2025 г.
Добавьте подходящих специалистов в список и оформите заявку для предварительного бронирования времени специалистов. После оформления заявки ваш персональный менеджер организует прохождение всех необходимых проверок с вами и каждым кандидатом из заявки. Специалист привлекается к проекту только после окончательного подтверждения его выхода с вашей стороны.
Подробнее
О специалисте
Специализация
Android разработчик
Грейд
Навыки
Отрасли
Главное о специалисте
Разработчик с опытом работы в мобильной разработке на платформе Android и iOS, специализирующийся на создании и поддержке мобильных приложений. Обладает глубокими знаниями в Kotlin, Java, а также в использовании популярных фреймворков и библиотек, таких как Retrofit, Room, RxJava, Coroutines, и других. Имеет опыт работы с архитектурными паттернами MVVM, MVP и MVI. Занимался разработкой приложений в различных сферах, включая финтех, банки и аутсорсинг. Имеет опыт работы с многомодульными проектами, внедрением тестирования и улучшением архитектуры. Владеет инструментами разработки Android Studio, Xcode и Jira.
Проекты
(8 лет 7 месяцев)
Проект в банке Открытие. Разработка клиентского приложения для мобильных касс под Android SDK
Роль
Android Разработчик
Обязанности
Разработка клиентского приложения для мобильных касс под Android SDK: В рамках данного проекта занимался разработкой клиентского приложения для мобильных кассовых систем на платформе Android с использованием Android SDK. Основной целью приложения было обеспечение удобного и быстрого процесса проведения транзакций на мобильных устройствах, интеграция с серверной частью и обеспечение высокой стабильности работы в различных условиях. Внедрение Clean Architecture для улучшения поддерживаемости кода.
Сотрудничество с командой: Работал в тесной связке с продуктовым менеджером, дизайнером, аналитиком и QA-специалистами. Совместно мы проводили регулярные встречи, где обсуждали текущий прогресс, выявляли и решали возникающие проблемы, а также корректировали требования по мере необходимости. Это сотрудничество позволило оперативно внедрять изменения в продукт и обеспечивать высокое качество приложения.
Проектирование архитектуры мобильного приложения: Отвечал за проектирование архитектуры приложения с учетом масштабируемости, производительности и удобства поддержки. Использовал современные архитектурные подходы, такие как MVVM (Model-View-ViewModel), MVP (Model-View-Presenter) и MVI (Model-View-Intent), чтобы обеспечить четкое разделение логики, улучшить тестируемость кода и упростить поддержку приложения в будущем.
Произвел интеграцию с REST API и WebSocket (для реальных уведомлений о транзакциях).
Знание архитектур MVVM, MVP, MVI: Благодаря глубоким знаниям архитектур MVVM, MVP и MVI, мог гибко выбирать подходящий шаблон проектирования в зависимости от требований конкретного функционала приложения. Это позволяло улучшить читаемость кода, уменьшить связность компонентов и повысить общую устойчивость приложения к изменениям.
Написание unit-тестов: Активно использовал unit-тестирование для проверки корректности работы бизнес-логики и отдельных компонентов приложения. Использовал библиотеки, такие как JUnit и Mockito, чтобы обеспечить высокий уровень покрытия тестами и снизить вероятность появления ошибок на продакшене. Это значительно улучшило качество кода и уменьшило время на исправление багов.
Оптимизация производительности: снижение потребления памяти за счет кэширования и отложенной загрузки данных
Способность разбираться в используемых инструментах и архитектурных подходах: Быстро осваивал и внедрял новые инструменты и архитектурные подходы в проект. Регулярно изучал новые версии Android SDK, обновления Kotlin и лучшие практики разработки мобильных приложений, что позволяло своевременно применять современные технологии для улучшения приложения.
Настройка CI/CD: автоматизация сборки и тестирования, деплой в Firebase.
Предложение путей развития проекта и реализация идей улучшений: Активно участвовал в обсуждении стратегии развития продукта и предлагал идеи по улучшению пользовательского опыта и производительности приложения. Среди реализованных идей были улучшения в области UI/UX, оптимизация работы с сетью, кэширование данных и повышение скорости отклика интерфейса.
Глубокие знания Kotlin и клиент-серверного взаимодействия: Использовал Kotlin в качестве основного языка программирования, что позволило писать лаконичный, безопасный и производительный код. Обладаю глубокими знаниями клиент-серверного взаимодействия с использованием REST API: проектировал и реализовывал запросы к серверу, обрабатывал ответы, обеспечивал надежную работу в условиях нестабильного интернет-соединения.
Размер команды: 6 человек (2 Android-разработчика, 1 менеджер продукта, 1 дизайнер, 1 аналитик, 1 QA)
Стек специалиста на проекте
Git, JSON, Kotlin, REST API, Firebase, MVVM, Android SDK, Retrofit, Room, Unit testing, Coroutines, Dagger2, WebSockets
Отрасль проекта
FinTech & Banking
Период работы
Октябрь 2022 - По настоящее время
(2 года 10 месяцев)
Проект в Банк Открытие. Разработка мобильных приложений для банков под Android (программа лояльности, ипотечные кредиты, инвестиции)
Роль
Android Разработчик
Обязанности
Разработка мобильных приложений для банков под Android: Программа лояльности: Разработка функционала для накопления бонусных баллов, скидок, привилегий для клиентов, интеграция с сервером для синхронизации данных о начислениях и использовании бонусов. Ипотечные кредиты: Разработка и интеграция функционала для расчета ипотеки, подачи заявок на кредит, получения информации о процентных ставках, сроках кредита, платежах и т. д. Инвестиции: Интеграция сервисов для покупки и продажи акций, облигаций, криптовалют, инвестиционных продуктов, отображение котировок в реальном времени и возможность отслеживания текущих инвестиций.
Работа с корутинами (Coroutines): Асинхронность: Использование корутин для асинхронных операций, таких как сетевые запросы, доступ к базе данных, обработка длительных операций в фоновом потоке. Конкурентность: Использование launch, async, withContext, а также каналов и потоков для безопасной параллельной обработки данных и синхронизации. Обработка ошибок: Применение try/catch, CoroutineExceptionHandler для корректной обработки ошибок и исключений в асинхронных операциях.
Использование Jetpack Compose и Navigation Component:
Разработка современных UI-компонентов с использованием декларативного подхода.
Использование Composables для создания гибких и модульных экранов.
Применение Modifiers для стилизации элементов и организации их расположения.
Управление навигацией между экранами (включая стек экрана, анимацию переходов и сохранение состояния).
Обработка аргументов, передаваемых между экранами, использование безопасной навигации с использованием NavController.
Работа с многомодульными проектами: Разработка и поддержка многомодульных Android-проектов, разделение функционала на независимые модули для улучшения структуры кода и облегчения масштабируемости. Конфигурация зависимостей между модулями через Gradle, использование зависимостей как в compile-time, так и в runtime. Параллельная сборка, кэширование и настройка Gradle для минимизации времени сборки и тестирования.
Извлечение данных из Room:
Создание Entity для хранения данных.
Создание DAO (Data Access Object) для работы с данными: запросы, вставка, обновление и удаление данных.
Использование LiveData для асинхронного получения и обновления данных в UI.
Оптимизация запросов через использование Room Database Queries, индексов, объединений и фильтров.
Оптимизация локального хранения данных с использованием ObjectBox:
ObjectBox: Интеграция ObjectBox для высокоскоростного хранения объектов в локальной базе данных.
Разработка модели данных, поддерживающей обновление объектов, их загрузку и сохранение с использованием Box.
Оптимизация чтения и записи с использованием ObjectBox’s query language для создания фильтров и сортировки данных.
Обработка миграции данных при обновлениях схемы хранения.
7. Внедрение тестирования на проекте
Включает различные виды тестирования для обеспечения качества приложения:
UI-тесты:
Espresso / Kaspresso: Написание автоматических UI-тестов для проверки правильности работы интерфейса, взаимодействия с элементами и переходов между экранами.
Проведение тестов на производительность, плавность анимаций и отклик интерфейса.
Snapshot-тесты:
Использование библиотек для сравнения текущего состояния UI с эталонными снимками.
Обеспечение того, чтобы UI не ломался при изменениях в коде.
JUnit-тесты:
Покрытие бизнес-логики и вспомогательных классов юнит-тестами.
Тестирование методов, алгоритмов, моделей данных на корректность выполнения.
Использование Mockito или других библиотек для мока зависимостей и сервисов.
8 человек (3 Android-разработчика, 1 iOS-разработчик, 1 продуктовый менеджер, 1 дизайнер, 1 аналитик, 1 QA)
Стек специалиста на проекте
Git, Kotlin, JUnit, Retrofit, Room, ObjectBox, Navigation Component, Espresso, Coroutines, Jetpack Compose, Kaspresso
Отрасль проекта
FinTech & Banking
Период работы
Октябрь 2022 - По настоящее время
(2 года 10 месяцев)
Сбербанк. Проект: Разработка мобильных приложений для дочерних банков под Android (Казахстан, Беларусь, Германия, Чехия)
Роль
Android Разработчик
Обязанности
Задачи и достижения:
Разработка мобильных приложений для дочерних банков под Android (Казахстан, Беларусь, Германия, Чехия).
Использовал BigDecimal для точных расчетов процентных ставок и финансовых операций в банковских приложениях
Адаптация наработок РФ проекта для переноса в overall и внедрения в дочерние банки (Server Driven UI, payments, и другие).
Общение с бизнесом до уровня зампреда дочерних банков, выявление потребностей, формирование и реализация беклога (SberPrime KZ, Единая система оплаты парковок по КЗ и другие).
Настроил обработку deeplink для глубоких ссылок в банковском приложении.
Доработал MVVM+ архитектуру для сервер-управляемого UI
Применял Toothpick для управления зависимостями в модуле платежных операций
Проведение собеседований на позицию Android-разработчика, внедрение политики crossCodeReview в команду.
Оптимизация энергопотребления: уменьшение фоновой нагрузки с помощью WorkManager. Замена частых сетевых запросов на WebSocket для push-уведомлений.
Внедрение модульной архитектуры (по принципам Clean Architecture).
Настройка CI/CD: автоматические сборки, деплой.
Размер команды: 8 Android-разработчиков в команде international, по 5-6 человек в каждой стране, дополнительные роли в каждой стране: iOS-разработчики, QA, менеджеры
Стек специалиста на проекте
Java, Kotlin, Realm, Retrofit, Koin, Room, OkHttp, Coroutines, Dagger2, RxJava 2, JUnit 5, Mockk, Toothpick, bigdecimal
Отрасль проекта
FinTech & Banking
Период работы
Сентябрь 2020 - Октябрь 2022
(2 года 2 месяца)
Формат работы
Тип занятости
Фулл-тайм
Формат работы
Удаленно
Командировки
Не готов
Релокация
Не готов
Готов работать на зарубежных проектах
Нет
Образование
Высшее
Учебное заведение
Казанский (Приволжский) федеральный университет, ИТИС
Специальность
Программная инженерия
Завершение учебы
2020 г.