CXM
Senior Backend Engineer-Payments
Автоматический пересказ вакансии на русском. Полный текст на языке оригинала и форма отклика — на сайте работодателя.
Senior Backend Engineer в международного брокера, отвечающий за платёжный коннекторный слой: адаптеры провайдеров, server-to-server и embedded-платежи, надёжность и наблюдаемость статусов транзакций.
Задачи
- Строить и владеть коннекторным и адаптерным слоем, чтобы подключение или замена провайдера становились конфигурацией и тонким адаптером, а не новой интеграцией каждый раз
- Переводить платёжные методы с redirect-флоу на server-to-server и embedded-флоу там, где провайдер это поддерживает, и измерять результат
- Владеть всем, что находится ниже слоя оркестрации: сверка (reconciliation), обработка статусов транзакций на нашей стороне, конфигурация методов и платёжные флоу в клиентском портале
- Обеспечивать надёжность статуса транзакции end-to-end через активный polling статусов, идемпотентную обработку и сверку
- Строить наблюдаемость статусов транзакций и производительности провайдеров по всему ландшафту
- Специфицировать требуемое поведение платформы оркестрации: стейт-машина транзакций, идемпотентность, polling, правила маршрутизации и каскадирования — проектировать, аргументировать и ревьюить результат
- Поддерживать интеграционную работу для карточной программы
- Расширять тот же набор интеграций на приобретённые юрлица как конфигурацию, а не как новую разработку
Требования
- 5+ лет в backend-разработке, сильные знания TypeScript, Node.js, уверенная работа с реляционными базами данных
- Продакшн-опыт с платёжными системами: авторизация, колбэки, возвраты, сверка и поведение при ретраях
- Практическое понимание идемпотентности, асинхронной обработки статусов, стейт-машин транзакций и проектирования с учётом частичных отказов — это ядро роли, а не деталь
- Опыт интеграции сторонних API неоднородного качества, включая прямое взаимодействие с интеграционной командой провайдера для решения вопросов, не покрытых документацией
- Способность владеть сервисом, а не закрывать тикеты: архитектурные решения, стандарты и исправление первопричин
- Английский и русский на рабочем коммуникативном уровне
Условия
- Фиксированная ежемесячная компенсация (обсуждается по опыту)
- Полностью удалённая работа в часовых поясах GMT–GMT+4, без релокации
- Владение коннекторным слоем и всем, что ниже, с прямым влиянием на то, какой станет платформа оркестрации
- Инженерные задачи, а не CRUD: асинхронные статусы десятков провайдеров, частичные отказы и локальные платёжные рельсы на развивающихся рынках
- Зона ответственности растёт вместе с бизнесом: карточная программа, новые юрлица и новые платёжные продукты
- Корпоративный AI-инструментарий как часть рабочего процесса
Навыки
- TypeScript
- Node.js
- Relational databases
- Payment systems
- Idempotency
- Transaction state machines
- Asynchronous status handling
- Third-party API integration
- Reconciliation
- Server-to-server payments
- Embedded payments
- Observability
- APM
- Event-driven patterns
- Transactional outbox
- Sagas
- .NET