JSA Group

Middle+ backend developer Kotlin

Не указана
  • Москва
  • Полная занятость
  • Полный день
  • От 3 до 6 лет

JSA Group - аккредитованная IT-компания.

Ведем разработку по направлениям: web, мобильная разработка, BI, VR, Data Science и др.

Сейчас мы ищем Backend-разработчика в свою команду на проект
АСУ ОГР (автоматизированная система управления открытыми горными работами).

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

Основная функциональность системы предоставляет бизнесу инструменты наглядного мониторинга, удобной диспетчеризации и интеллектуального управления карьерной и ЖД-техникой, которая задействована в процессе перевозки руды. Отслеживание статусов, передача заданий и рекомендаций на бортовые устройства, обеспечение обмена бизнес-информацией между всеми участниками процесса, контроль и отчетность — это те задачи, которые будет решать создаваемый продукт.

Мы создаём АСУ ОГР на базе библиотек с открытым исходным кодом. Проекту 2 года.

Участие в проекте предполагает решение сложных задач по организации обмена данными между серверным ПО и распределенной сетью бортовых устройств, обработку данных в нетривиальных бизнес-процессах, работу с геоинформационными потоками данных и картографическим сервисом, комбинированное использование в логике результатов аналитических алгоритмов и искусственного интеллекта.

Команда:

В составе 4 команды с общей численностью:
14 функциональных аналитиков,
9 системных аналитиков,
10 frontend разработчиков,
13 backend разработчиков,
2 дизайнера
1 DevOps.
К проекту подключена команда тестирования из 3 специалистов.

Стек на проекте: Kotlin, Spring (Boot+WebFlux), React, ElectronJS, PostgreSQL + PostGIS.

Стек бекенда: Kotlin 1.7, Spring Boot 3, Spring WebFlux(REST/Websocket), r2dbc, Redis, PostgreSQL 15, Liquibase, Test Containers, Keycloak, Kafka.

Работаем по методологии Agile.

Задачи:

  • Реализовывать endpoint'ы для картографического сервиса и приложения интерактивной карты;
  • Разработать алгоритм автоматического определения параметров текущего рейса и статуса техники;
  • Создать инструмент ведения и актуализации системных настроек в распределенной сети устройств;
  • Реализовать сервис обмена данными с ML-модулем системы;
  • Разработать сервис работы с геоданными, преобразования систем координат и проекций;
  • Участвовать в разработке других комплексных модулей системы.

Мы ожидаем, что ты:

  • Имеешь опыт коммерческой разработки от 3-х лет на Kotlin или другом JVM-языке (Java, Groovy, Scala);
  • Разрабатывал сервисы в микросервисной архитектуре;
  • Знаешь Spring (IoС, Data, MVC) и Java Core (Collections, Streams, Exceptions, Threads, jdbc);
  • Понимаешь принципы ООП, знаком с паттернами проектирования и умеешь их правильно применять;
  • Умеешь писать SQL-запросы, анализировать план выполнения запроса и проводить оптимизацию;
  • Имеешь опыт написания юнит и интеграционных тестов.

Хорошо, если ты:

  • Имеешь хорошие знания по Spring (WebFlux, r2dbc, Security);
  • Знаешь как работает Kafka, что такое продюсеры и консьюмеры;
  • Имеешь навыки работы с Keycloak и ролевыми моделями;
  • Имел опыт работы с BPM-движками (особенно с Camunda);
  • Знаком с GraphQL (может пригодиться в перспективе).

Преимущества работы у нас:

  • Оклад + годовой бонус;
  • ДМС со стоматологией, полис для выезжающих за рубеж, доплата по больничному листу до 5 рабочих дней - 7 календарных;
  • Корпоративная мобильная связь;
  • Возможности для профессионального и карьерного развития;
  • Формат работы: удаленно ( так же возможен гибридный формат или работа в офисе (по-желанию));

  • Проект пишется на базе Open source решений;
  • В проектировании и разработке применяются новейшие технологии и подходы;
  • Все архитектурные решения фиксируются в виде ADR (Architecture decision record);
  • Постановки задач формализуются от бизнес-требований до SRS (Software requirements specification);
  • Вся проектная документация ведется в едином пространстве Confluence;
  • Над проектом работает опытная команда, применяется подход менторства.