Обязанности и достижения:
Занимался разработкой терминала для ресторанного бизнеса. Разрабатывал бэк-енд часть приложения, написаной на Kotlin с использованием фреймворка Spring и технологией WebFlux. Писал фронтенд на TypeScript и ReactJS. Архитектура терминала делилась на два сервера: локальный толстый-клиент, который отдавал frontend и удалённый docker container, который служил для репликации данных с БД.
Учавствовал в обёртывании Windows-терминала под Android с помощью корутин и Android Room. Создавался мок spring-boot'a для Android, чтобы запускать толстый-клиент на смартфоне, и отдавать фронты во Webview. Менялась так же используемая база данных с mongodb (на desktop) на sqlite с использованием ORM Android Room.
Разработал модуль, обновляющий толстый клиент, развёрнутый в производстве у пользователя.
Особенности и достижения:
- Автоматизировал сборку проекта на Jenkins с Groovy.
- Приходилось разбираться в коде Бэк-Офиса написанный на Java (Spring).
- Использовал реляционные и не реляционные базы данных.
- Использовал брокер сообщений RabbitMQ для уведомления Бэк-Офиса с терминала об изменениях.