← Back to jobs

Software Engineer - Payment Team

Skills

aiapiapi designautomationci cdclaude codedistributed systemserpgcpgithubgithub copilotjavakafkakubernetesmicroservicesobservabilitypostgresqlrailsrestroot cause analysissapsoc 2springsql

Description

About Tereina

Tereina is on a mission to revolutionize B2B payments. We're a well-funded, early-stage startup supported by one of the largest software companies in the world, SAP. We're building cutting-edge solutions that will transform the way businesses move money. Our platform handles cross-border payment processing, counterparty management, bank account administration, and compliance workflows for enterprise customers worldwide.

The Payment Team owns how money moves through Tereina — from payment initiation and validation through routing, execution with our banking and payment partners, and status tracking all the way back to the customer. We're a team of five engineers today and growing, and we already integrate with several payment processors across domestic, international, and real-time (RTP/FedNow) rails. Our payment services are built on Java and Spring Boot microservices running on Kubernetes, with Google Pub/Sub messaging and Apache Camel integration pipelines at their core.

About the Role

As a Software Engineer on the Payment Team, you will build and operate the services that carry a payment from the moment a customer's ERP submits it to the moment funds reach the beneficiary. You will report to the Engineering Manager – Payment Team and work alongside senior engineers and an architect on the two services at the heart of our money flow:

  • Payment Request: intake of payment batches over REST and ISO 20022 (pain.001), validation and entity resolution, sanctions and AML screening, rules-driven routing, FX-locked multi-step instruction plans, scheduling into rail-specific execution windows, and pain.002 status reporting back to the customer.

  • Payment Execution: signed instruction intake, fund verification and reservation in a double-entry ledger, dispatch through processor adapters across ACH, wire, real-time (RTP/FedNow), SEPA, Faster Payments, and digital-asset rails, settlement and return tracking from processor events, reconciliation, and CAMT.052/053 account reporting.

You will ship features end to end, help bring new banks and payment processors onto the platform, and share responsibility for production health with the rest of the team. It's a role for an engineer who wants to go deep on how money actually moves — and who cares that every payment is correct, traceable, and on time.

Your First Months

  • Day 1: Ship your first commit to a payment service.

  • Week 1: Get both payment services running locally, follow a payment end to end from request intake to settlement in our dev environment, and join the team's stand-ups and design reviews.

  • Month 1: Deliver your first feature or fix to production and shadow an on-call shift.

  • Month 3: Own a feature end to end — such as a new validation rule, a routing change, or a processor adapter enhancement — and join the on-call rotation.

  • Month 6: Contribute to a new processor or rail integration from sandbox certification through go-live, and become a go-to person for an area of the payment flow.

Key Responsibilities

  • Payment Flow Development: Implement and evolve features across payment request and payment execution — validation rules, routing decisions, instruction planning, funding, dispatch, and status tracking — in Java and Spring Boot microservices.

  • Processor & Bank Integrations: With guidance from senior engineers and the architect, build and maintain adapters for banking partners and payment processors, including API- and webhook-based connectivity, rail-specific rules, sandbox certification, and feature-flagged production go-lives.

  • Correctness by Design: Write code that is idempotent, safe to redeliver, and auditable — enforced state-machine transitions, duplicate-submission guards, signed instructions, and full revision history.

  • Ledger & Reconciliation: Contribute to ledger postings and fund-state transitions (pending, clearing, settlement, return) and to the reconciliation that keeps our books matched against provider balances.

  • Exceptions & Operations Tooling: Help improve how failed and held payments are surfaced, explained, and resolved — clear error codes, operator actions such as reprocess, fail, and return, and internal tooling that lets Payment Operations act quickly.

  • Code Quality: Write clean, maintainable, well-tested code — unit, integration, and end-to-end — and contribute to design reviews and technical documentation.

  • Production Ownership: Monitor service health and take part in incident response and root-cause analysis. On-call rotates across the team, and we aim for follow-the-sun coverage across our time zones, though you may occasionally be asked to jump in on an emergency.

  • Cross-functional Collaboration: Work with Product, Payment Operations, Quality Engineering, and the Platform, SAP Integrations, and UX teams — as well as engineers at our banking and payment partners.

Qualifications

  • Experience: 3+ years in software engineering, with experience building and running backend systems and APIs in production.

  • Technical Foundation: Proficiency in Java and Spring Boot, RESTful API design, and relational databases (PostgreSQL or similar), including SQL and schema migrations.

  • Distributed Systems: Working knowledge of message-driven systems — publish/subscribe, queues, retries, dead-lettering — and of idempotency, consistency, and failure handling.

  • AI Tooling Proficiency: Hands-on experience with modern AI coding assistants (e.g., Claude Code, GitHub Copilot, or similar) and the ability to use them to improve engineering speed, quality, and impact.

  • Communication & Collaboration: Strong written and verbal communication skills and the ability to work effectively in a fast-paced, cross-functional, distributed team.

Preferred Qualifications

  • Exposure to payments and money movement — payment lifecycles, settlement, returns, and exceptions

  • Experience with payment rails such as ACH, wires, SWIFT, real-time (RTP/FedNow), SEPA, or Faster Payments

  • Familiarity with ISO 20022 messages (pain.001, pain.002, camt.052/053)

  • Experience with Apache Camel or other enterprise integration frameworks, and with Google Pub/Sub, Kafka, or similar messaging

  • Exposure to rules engines or decision tables (e.g., DMN/Drools) and explicit state-machine modeling

  • Experience with double-entry ledgers, fund reservation, or financial reconciliation

  • Understanding of secure API design, handling of sensitive financial data, and compliance requirements such as sanctions/AML screening and SOC 2

  • Familiarity with Kubernetes, GCP, observability tooling, and CI/CD

  • Exposure to cross-border payments, FX, multi-currency money movement, or digital-asset/stablecoin settlement

  • Familiarity with SAP ERP payment processes

Why Join?

  • Growth: Own the platform and the operations function end-to-end, and expand your scope across new products, rails, partners, and markets as we scale.

  • Impact: Shape how payments operations scale at a fast-moving B2B payments company.

  • Innovation: Work at the intersection of payments operations and AI-enabled automation.

  • Culture: Join a collaborative team that values curiosity, inclusion, and sustainable work.

We are looking for curious, driven builders who want to create secure, scalable, user-friendly payments products. If you do not meet every qualification but bring initiative and a growth mindset, we encourage you to apply.

We embrace AI as a powerful tool for innovation and welcome team members eager to leverage it in their work. As an equal opportunity employer, we're committed to diversity, inclusion, and creating an environment where everyone can thrive.

Get similar jobs in United States by email

We'll email you when new jobs similar to this one appear.

Similar jobs

Explore more Software Developer jobs in United States.

No similar openings right now. Refine your search or create an alert above.