Java Fullstack разработчик (Jmix + Flutter) (удаленная работа)

19 мая 2026

Уровень зарплаты:
от 60 000 до 70 000 руб.
Требуемый опыт работы:
Не указан

Вакансия: Java Fullstack разработчик (Jmix + Flutter)

Описание вакансии

О проекте:

Мы создаем мобильное приложение на базе картографических сервисов для автомобилистов с элементами геймификации. На текущий момент готов MVP проекта: есть готовая базовая версия приложения, админки, бэк и сайт, сформирована основная логика работы. Сейчас проекту нужен следующий этап развития: доработка функционала, улучшение пользовательского опыта, исправление технических недочётов, подготовка к стабильному запуску и дальнейшему масштабированию. Проект находится на стадии, когда уже есть что показать, протестировать и развивать, но важно усилить техническую часть и довести продукт до качественного, удобного и стабильного решения.

Кого мы ищем:

Мы ищем разработчика, который сможет подключиться к уже существующему проекту, разобраться в текущей архитектуре и помочь довести приложение до полноценного рабочего продукта.

Нам нужен не просто исполнитель отдельных задач, а специалист, который умеет смотреть на продукт шире: понимать логику пользователя, видеть слабые места, предлагать технические решения и аккуратно доводить задачи до результата. Далее требования:

1. Обязательные требования (Hard Skills)

Бэкенд (Java + Jmix)
- Java Core: Java 11 17, OOP, коллекции, многопоточность, паттерны проектирования.
- Spring Framework: Spring Boot, Spring Data, Spring Security.
- Jmix: опыт коммерческой разработки на Jmix (или CUBA): создание сущностей, экранов, ролевая модель, настройка UI через Jmix Studio.
- Базы данных: PostgreSQL + PostGIS (пространственные запросы, ST Distance, ST Intersects, индексы).

Мобильная разработка (Flutter)

- Dart: уверенное знание языка, асинхронность (Future, Stream).
- Flutter: опыт создания production-приложений (не менее 1 года).
- State management: Provider / Bloc / Riverpod (хотя бы один).
- Работа с сетью: Dio или http-клиент, интеграция с REST API (JSON).

2. Желательные требования
- Знание картографичеких API и фреймворков
- CI/CD: GitLab CI / GitHub Actions для бэкенда и мобилки.
- Публикация: опыт сборки .apk / .ipa и публикации в магазины (Google Play / App Store).

3. Типовые задачи
- Разработка бэкенда на Jmix + PostGIS: модели данных, права доступа, REST API для мобильных клиентов.
- Разработка мобильного приложения на Flutter: экраны, навигация - 99, 9% экранов готовы.
- Настройка обмена данными между Flutter и Jmix: REST, возможно WebSocket.
- Оптимизация пространственных запросов в PostgreSQL/PostGIS для мобильных сценариев (поиск ближайших объектов).

4. Soft Skills
- Работа в условиях неопределённости: Умение самостоятельно собирать требования через диалог с командой, предлагать прототипы (UI/API), фиксировать договорённости в минимальной документации (чек-листы, user stories, acceptance criteria).
Способность отличать критичный функционал от хотелок и предлагать MVP-решения.
- Проактивность: не ждать идеального ТЗ, а задавать наводящие вопросы: Что должно произойти при нажатии на кнопку? , Какие данные в этом поле обязательны? , Как пользователь попадёт на этот экран? .
- Документирование по ходу дела: умение быстро фиксировать принятые решения в коде и в совместных чатах/тикетах.
- Мультиплатформенность: умение переключаться между бэкендом, вебом и мобилкой.
- Самоменеджмент: приоритизация задач в разных стеках.

Формат работы и взаимодействие:

На этапе подготовки к взаимодействию, мы предложим выполнить тестовое задание.

Мы открыты к разным форматам: проектная работа, частичная занятость или долгосрочное сотрудничество.

В проекте есть технический директор, который хорошо понимает продукт, его текущую архитектуру и дальнейшую логику развития. Он будет помогать с погружением в проект, отвечать на технические вопросы, подсказывать по архитектурным решениям и сопровождать разработчика.

Мы не оставляем специалиста один на один с проектом: команда всегда на связи, готова оперативно давать обратную связь, уточнять бизнес-логику и помогать принимать решения по спорным моментам.

Для синхронизации работы предусмотрены регулярные созвоны 1-2 раза в неделю. На них обсуждаем текущий статус задач, технические вопросы, приоритеты, возможные сложности и следующие шаги.

Идеальный кандидат для нас это разработчик, который не боится заходить в уже готовый MVP, умеет наводить порядок в проекте и помогает превратить "почти готовое" решение в стабильный продукт, которым удобно пользоваться.