Java-разработчик не ниже Middle (мобильный сервис продажи билетов)
225 000 – 290 000 ₽в месяц
СпутникМоскваВ офисеот 3 лет5/2Полная занятость
PostgreSQLJavaREST APISpring BootApache KafkaHibernateSpring FrameworkJunitMultithreadingJPAMockitoTestcontainers
Описание
Аккредитованная ИТ-компания разрабатывает и сопровождает популярный высоконагруженный мобильный сервис продажи и записи электронных билетов на транспортные карты с многомиллионной аудиторией. Backend взаимодействует с мобильным приложением, банковскими системами, билетными шлюзами и сервисами фискализации. Ищут Java-разработчика уровня Middle и выше, которому интересно разбираться в устройстве работающего продукта, развивать его и решать задачи на стыке многопоточности, асинхронной обработки и интеграций. Вы будете работать в небольшой команде вместе с бэк- и фронт-разработчиками, QA и DevOps, видеть результаты своего вклада в проект, влиять на технические решения.
Обязанности
- Разрабатывать backend-сервисы на Java, разбираться в существующем коде и дорабатывать его
- Развивать API для мобильного приложения и фронтенда: обрабатывать запросы, возвращать корректные данные, статусы операций, ошибки
- Реализовывать и сопровождать интеграции с платёжными и билетными шлюзами, обработку сообщений через Kafka
- Работать с PostgreSQL: писать SQL-запросы, обеспечивать корректное чтение и изменение данных
- Находить и устранять ошибки, в том числе в асинхронных и многопоточных процессах; писать тесты и проверять исправления вместе с QA
Требования
- От трёх лет коммерческой разработки на Java
- Уверенное знание Java Core, опыт работы со Spring Framework, Spring Boot и JPA/Hibernate
- Коммерческий опыт разработки и сопровождения сервисов с Kafka: отправка и обработка сообщений, обработка сбоев и повторной доставки
- Понимание многопоточности и опыт диагностики асинхронных и конкурентных процессов
- Хорошее знание SQL, опыт работы с PostgreSQL и понимание транзакций
- Понимание HTTP и REST API: запросов и ответов, кодов состояния, обработки ошибок и повторных запросов
- Опыт написания тестов с JUnit, Mockito и Testcontainers
- Уверенная работа в Linux: командная строка, просмотр логов и диагностика процессов
- Умение самостоятельно разбираться в существующем коде, находить причины ошибок и доводить backend-задачи до результата без постоянных подсказок и контроля
- Английский язык на уровне чтения и понимания технической документации
- Основной стек: Java; Spring Framework, Spring Boot, JPA/Hibernate; Kafka; PostgreSQL; JUnit 4/5, Mockito, Testcontainers; Maven/Gradle, Git, Docker, GitLab CI/CD, Linux
Будет плюсом
- Опыт интеграции приёма платежей через эквайринг банковских карт или СБП, интеграции с сервисами фискализации и билетными шлюзами
Условия
- Официальное оформление по трудовому договору, полная занятость
- Зарплата в указанном в вакансии диапазоне – по результатам отбора
- График 5/2, 8-часовой рабочий день
- Ежедневные рабочие встречи начинаются в 10:00
- Офис: Москва, Донской район (метро «Ленинский проспект», «Шаболовская», «Тульская», МЦК «Площадь Гагарина»), 2-й Верхний Михайловский проезд, 9с2
- Испытательный срок – три месяца
- После испытательного срока возможен гибрид по согласованию и результатам работы
- ДМС после прохождения испытательного срока
Процесс отбора
- В сопроводительном письме ответить на два вопроса: подходят ли указанный зарплатный диапазон и формат работы; есть ли личный опыт интеграции приёма платежей (эквайринг или СБП), указать компанию и проект из резюме, а также банк или платёжный сервис, с которым выполняли интеграцию
- Отклики без ответов на эти вопросы рассматриваются с меньшим приоритетом