Java-разработчик - Биллинг
О компании
MANGO OFFICE — лидер российского рынка облачных коммуникаций и участник топ-20 крупнейших ИТ-разработчиков России.
Более 1000 сотрудников развивают виртуальную АТС, контакт-центр, речевую аналитику, роботов, интеграции и другие инструменты для продаж и клиентского сервиса. Продуктами MANGO OFFICE пользуются Skyeng, Ситимобил, ВкусВилл, АльфаСтрахование, СберМаркет и другие компании.
Мы модернизируем собственную биллинговую платформу и ищем ведущего Java-разработчика, который будет создавать новые сервисы, переносить бизнес-логику из монолитной базы данных и повышать надёжность критической системы.
Задача роли
Клиентская база MANGO OFFICE растёт, появляются новые продукты и интеграции, а значительная часть логики биллинга исторически сосредоточена в монолитной базе данных и хранимых процедурах.
Сейчас мы:
- создаём единый API биллинга;
- переносим бизнес-логику из базы данных в сервисы;
- выделяем самостоятельные предметные области;
- разделяем транзакционную и аналитическую нагрузку;
- развиваем событийную архитектуру;
- повышаем надёжность и независимость выпусков.
Разработчик будет работать вместе с Technical Delivery Manager, системным аналитиком, архитекторами и специалистами по базам данных.
Нам нужен инженер, который не ограничивается выполнением готовых задач, а самостоятельно разбирается в системе, участвует в проектировании решения и отвечает за результат до промышленного запуска.
Чем предстоит заниматься
- Проектировать и разрабатывать сервисы биллинга на Java.
- Переносить бизнес-логику и хранимые процедуры из базы данных в прикладной слой.
- Участвовать в определении границ сервисов и контрактов между ними.
- Разрабатывать и развивать REST API.
- Переводить потребителей с прямого доступа к базе данных на управляемые API и события.
- Работать с финансовыми и высоконагруженными транзакционными операциями.
- Обеспечивать целостность, согласованность и корректность данных.
- Разрабатывать интеграции через Kafka, RabbitMQ или аналогичные средства.
- Оптимизировать производительность приложений и запросов к базе данных.
- Покрывать решения модульными и интеграционными тестами.
- Участвовать в нагрузочном тестировании и разборе инцидентов.
- Развивать мониторинг, журналирование, метрики и трассировку запросов.
- Участвовать в развитии CI/CD и автоматизации выпусков.
- Работать с Docker и Kubernetes.
- Сопровождать изменения до промышленной эксплуатации.
Самостоятельная разработка с AI
Мы ищем разработчика, для которого AI-инструменты уже стали полноценной частью инженерной работы. Важно иметь реальный опыт самостоятельной разработки проектов или значимых компонентов с использованием Kimi, Claude Code, ChatGPT или аналогичных инструментов.
Под таким опытом мы понимаем не отдельные подсказки и генерацию небольших фрагментов кода, а способность с помощью AI пройти существенную часть пути: разобраться в задаче → спроектировать решение → написать код → создать тесты → провести отладку → подготовить документацию → довести результат до использования.
Предстоит использовать AI для:
- изучения незнакомого кода и зависимостей;
- проектирования сервисов и контрактов;
- написания и переработки кода;
- создания тестов и тестовых данных;
- анализа SQL и хранимых процедур;
- подготовки миграций;
- поиска причин ошибок;
- документирования решений;
- ускорения технических исследований.
При этом разработчик должен понимать и проверять созданный код, контролировать архитектуру, безопасность, производительность и корректность работы с данными.
Кого мы ищем
- Опыт промышленной разработки на Java от пяти лет.
- Уверенное знание Java и Spring Boot.
- Опыт разработки микросервисов и REST API.
- Опыт работы с реляционными базами данных и SQL.
- Понимание транзакций и уровней изоляции.
- Опыт работы с Kafka, RabbitMQ или другими очередями сообщений.
- Понимание принципов событийной архитектуры.
- Опыт написания модульных и интеграционных тестов.
- Опыт работы с Docker и Kubernetes.
- Понимание CI/CD.
- Опыт эксплуатации и диагностики промышленных систем.
- Умение разбираться в существующем коде и системе с неполной документацией.
- Способность самостоятельно проектировать и реализовывать решение.
Обязательный опыт работы с AI
- Регулярное использование AI-инструментов в разработке.
- Опыт самостоятельной реализации реального проекта или значимого компонента преимущественно с помощью AI.
- Умение управлять контекстом и правилами проекта для AI-инструмента.
- Умение разбивать большую задачу на проверяемые этапы.
- Способность проверять архитектуру и корректность созданного кода.
Будет плюсом
- Опыт работы с биллингом, телекомом, финтехом или расчётными системами.
- Опыт переноса хранимых процедур и бизнес-логики из базы данных в сервисы.
- Опыт декомпозиции монолитных систем.
- Понимание распределённых транзакций и согласованности данных.
- Опыт работы с PostgreSQL.
- Опыт с CDC и Debezium.
- Понимание различий между OLTP- и OLAP-нагрузкой.
- Опыт работы с OpenTelemetry, Prometheus, Grafana и распределённой трассировкой.
Ожидаемые результаты за первые 6 месяцев
- Разработчик погрузился в архитектуру, данные и основные процессы биллинга.
- Участвует в проектировании целевых сервисов и интеграционных контрактов.
- Один или несколько компонентов перенесены из монолитной логики в самостоятельные сервисы.
- Для разработанных сервисов настроены тестирование, мониторинг и промышленная эксплуатация.
- AI-инструменты системно применяются для ускорения разработки без снижения качества.
Формат работы
- Полная занятость.
- Формат работы обсуждается индивидуально.
Этапы отбора
- Первичное интервью.
- Встреча с руководителем направления.
- Техническое интервью с архитектором и разработчиками.
- Разбор реализованного проекта, созданного с активным использованием AI.
- Финальная встреча.
- Предложение о работе.
Что указать в сопроводительном письме
Коротко опишите:
- наиболее сложную систему или сервис, который вы разрабатывали;
- опыт работы с высокими нагрузками, транзакциями и базами данных;
- участвовали ли в декомпозиции монолита;
- какой проект вы самостоятельно реализовали с активным использованием AI;
- какие инструменты применяли.
Ждем откликов в tg @AlinaKharchenkoHR