Backend-разработчик
Коротко
Designs and develops backend services for a mobile financial product, implements payment scenarios, integrates with external services, and works with · Needs: Strong Java and Spring (Boot/Cloud); REST/gRPC API development; PostgreSQL and SQL; Redis; Kafka or RabbitMQ; Docker; Git and GitLab CI/CD.
Описание от работодателя
Обязанности
Проектирование, разработка и сопровождение backend-сервисов мобильного финансового продукта.
Разработка REST / gRPC API для мобильных приложений и внутренних сервисов.
Реализация бизнес-логики платежных сценариев: электронный кошелёк, пополнения, P2P-переводы, оплата услуг, QR-платежи.
Разработка и сопровождение интеграций с внешними сервисами и платёжными шлюзами, включая эквайринг, токенизацию и сервисы поставщиков услуг.
Участие в разработке и сопровождении интеграционных сервисов и партнёрских решений.
Работа с реляционными базами данных, кэшированием и системами обмена сообщениями: PostgreSQL, Redis, Kafka / RabbitMQ.
Разработка сервисов с учётом требований к производительности, отказоустойчивости и обработке высоких нагрузок.
Реализация механизмов аутентификации и авторизации.
Разработка и сопровождение сервисов уведомлений и других клиентских сценариев.
Написание unit- и integration-тестов.
Участие в code review и проектировании архитектуры сервисов совместно с архитекторами.
Подготовка и актуализация технической документации.
Диагностика и устранение дефектов и инцидентов в production, участие в анализе причин инцидентов.
Соблюдение требований информационной безопасности и PCI DSS.
Взаимодействие с командами Mobile, QA, системными аналитиками, DevOps, архитекторами и Product-командой.
Требования
Уверенное знание Java и Spring, включая Spring Boot / Spring Cloud.
Знание ООП, SOLID, паттернов проектирования и принципов чистой архитектуры.
Опыт разработки REST / gRPC API.
Опыт проектирования API для мобильных приложений.
Знание механизмов аутентификации и авторизации: OAuth2, JWT, сессии.
Уверенное знание PostgreSQL и SQL, опыт оптимизации запросов.
Опыт работы с Redis.
Опыт работы с Kafka и/или RabbitMQ, понимание принципов асинхронного обмена сообщениями.
Понимание микросервисной архитектуры и принципов работы API Gateway.
Опыт работы с Docker, знание Kubernetes на базовом уровне.
Опыт работы с Git и GitLab CI/CD.
Знание HTTP/HTTPS, TLS, TCP/IP, форматов JSON / XML.
Понимание принципов построения высоконагруженных и отказоустойчивых систем: идемпотентность, retry, circuit breaker, кэширование.
Опыт написания unit- и integration-тестов.
Понимание принципов информационной безопасности и требований PCI DSS.
Знание FCM / APNs будет преимуществом.