S
SPD Technology
BackendSenior
Senior Backend Engineer — Payments (Go, TypeScript, Node.js)
GoTypeScriptNode.jsNestJSPostgreSQLStripeAdyenBraintreeCheckout.comWorldpayFiservWooCommerceShopifyMagento
About the Position
SPD Technology is seeking a Senior Backend Engineer to join a product team building payment infrastructure for merchants and partner platforms. The role involves owning end-to-end payment flows, integrating payment processors, and handling complex payment operations.
Responsibilities
- Own end-to-end payment flows in TypeScript/NestJS services: authorization, capture, void, refund, dispute handling, and payout initiation and confirmation.
- Build and maintain acquirer and processor integrations, keeping the platform acquirer-agnostic behind clean internal abstractions.
- Design embedded and hosted checkout experiences (hosted fields, iframes, tokenization) that keep sensitive cardholder and bank data out of internal systems and minimize PCI scope.
- Implement fee calculation and rate logic, including tiers, interchange-plus, flat structures, rounding rules, special rates, and edge cases.
- Build the reconciliation and settlement layer to match processor reports and settlement files against internal records and surface breaks.
- Design event handling incorporating idempotency keys, out-of-order and duplicate webhooks, retries with backoff, and state machines.
- Integrate fraud, bank-account verification, and KYC providers, tuning decisioning against real outcomes.
- Handle ACH mechanics including submission windows, returns, return codes, NOCs, and retry rules.
- Ensure correctness in the domain, maintaining complete audit trails and producing reconciliation evidence.
- Act as the team’s payments expert, advising product on rail capabilities and reviewing payment-adjacent code.
Requirements
- 6+ years of professional software engineering experience
- At least 3 years of hands-on experience with payment systems or payment processing
- Strong backend engineering experience with Go, TypeScript, and Node.js
- Direct experience owning production payment flows rather than only performing basic payment API integrations.
- Experience integrating payment processors, gateways, or acquirers such as Stripe, Adyen, Braintree, Checkout.com, Worldpay, Fiserv, or similar providers.
- Strong understanding of the card payment lifecycle, including authorization, capture, settlement, refunds, chargebacks, and disputes.
- Understanding of bank payment rails and preferably ACH/NACHA concepts, including returns and transaction timing.
- Experience with payment reconciliation and settlement.
- Strong understanding of webhooks, retries, idempotency, asynchronous processing, and distributed-system failure scenarios
- Experience designing relational data models for transaction-heavy systems.
- Understanding of PCI DSS and payment-security patterns such as tokenization and isolation of sensitive payment data.
- Strong attention to correctness and edge cases, especially in financial systems.
- Fluency with modern AI-assisted development tooling.
- Strong English communication skills and confidence working directly with a US-based team.
- Ability to work with 4–6 hours of daily overlap with US Central Time
- Experience with platform, marketplace, or facilitator models (split payments, sub-merchant onboarding, multi-party flows).
- Experience with payouts and disbursement rails, including bank-account collection, verification, and payout status handling.
- Experience with fraud and risk tooling, and bank-account validation services.
- Experience with e-commerce plugin or SDK development (WooCommerce, Shopify, Magento).
- Knowledge of multi-currency, cross-border, or alternative payment methods.
- Experience with event sourcing applied to financial state, and double-entry ledger design.
Who to contact
Senior Backend Engineer — Payments (Go, TypeScript, Node.js)
View Original