Участие в разработке трех мобильных приложений, связанных с форексом.
Обязанности:
- разработка мобильных приложений на Swift по методологии Scrum;
- реализация кастомных элементов UI, используя фреймворки CoreAnimation & CoreGraphics;
- наставничество (ежедневное code review, обсуждение будущих работ, обмен опытом);
- проведение собеседований
Технологии:
- многомодульная архитектура приложений, основанная на Rx+MVVM+Coordinator;
- общие для всех приложений модули вынесены в отдельные внутренние проекты и подключаются как зависимости через cocoapods (DI - Swinject);
- gRPC для асинхронного обмена сообщениями между клиентом и сервером;
- вся верстка построена кодом (SnapKit), ни одного xib;
- для тестирования используются фреймворки RxTest & XCTest.
Поддержка и расширение сервисного приложения. От переговоров с дизайнером & product manager - и до релиза в стор, ответов на письма пользователей "у меня не работает ХХХ".
Вдобавок к RxMVVM внедрил Router + Coordinator, потихоньку перехожу на BDD. Оплата с помощью Apple Pay или платежных карт. Локально данные хранятся в Realm. Все таблицы строятся через TableKit (декларативное построение).
Трекаем юзеров, у которых возникают ошибки, связанные с неверными данными от сервера - это позволяет пофиксить записи в БД до того, как юзер позвонит/напишет в саппорт.
Предпринимались попытки спасти/поддержать чат на плаву. Полезный навык: быстро разобраться в туевой хуче кода и пофиксить баги. Не менее полезный опыт - запомнил, как нельзя писать код; ну либо писать так, чтобы другие не поняли :)
Создание двух проектов (2d кликеры под iOS & Android) на Unity3D с нуля. Это был мой первый настоящий опыт в разработке ПО. Весь год только и делал, что ходил про граблям, вообщем, быстро набирался опыта :)
Могу рассказать за: анимацию (нативную, Spine, Dotween), построение UI, интеграцию с Facebook, связку с Firebase (авторизация, хранение пользовательских данных, отправка пушей - в игре завершился процесс Х и подобное, простенькая бизнес логика на сервере), внутриигровые покупки (от создания продуктов в Маркете/Сторе до обработчиков в игре), интеграция различных рекламных сеток, и, конечно, опыт оптимизации под мобильные платформы - приходилось постоянное выбирать между FPS и качеством картинки, потому что кирпичи на андроиде тоже должны поддерживаться.
Работа в команде. Ревью кода.
Tapitalist
https://itunes.apple.com/us/app/tapitalist-idle-money-miner/id1326511717?ls=1&mt=8
https://play.google.com/store/apps/details?id=ru.logomotiv.fingame
Fidget Miller
https://itunes.apple.com/us/app/fidget-miller-green-farming/id1327868684?ls=1&mt=8
https://play.google.com/store/apps/details?id=ru.logomotiv.fidgetfarming
Работа c Dotween, Spine, Firebase (Auth, Cloud Functions, Database, Remote Config), Git, JIRA, Fabric
Аспирант очной формы обучения на кафедре Вычислительной техники. Область научных интересов: алгебры k-значных функций, многозначная логика.
Управление в технических системах
Научные интересы: конечномерный интервальный анализ, теория автоматического управления
Направление: Информатика и выч. техника
Научные интересы: алгебра, многозначная логика.