Description
About the Role
We are looking for a Senior Full Stack Developer to join our engineering team and help build and complete revenue-critical financial technology workflows.
You will work across the .NET backend, React/TypeScript frontend, PostgreSQL data layer, APIs, asynchronous integrations, and Azure platform.
The role is hands-on and suited to an engineer who can take ownership of complex workflows from database and API design through frontend experience, automated testing, deployment, and production support.
What You Will Own
· End-to-end development of financial transaction, account, payment, beneficiary, reporting, and reconciliation workflows.
· C#/.NET services and REST APIs, including validation, authorization, idempotency, retries, state transitions, and error handling.
· React and TypeScript merchant and operational interfaces with clear handling of pending, failed, rejected, returned, reversed, cancelled, and completed states.
· PostgreSQL database design, relational data modeling, transactional integrity, performance, and audit-friendly data structures.
· Integration with third-party payment and financial providers, including webhooks, provider references, status mapping, timeouts, retries, and reconciliation.
· Double-entry ledger-related workflows for transactions, fees, holds, reversals, adjustments, collections, payouts, and pay-ins where applicable.
· Automated testing across unit, integration, contract, API, end-to-end, replay, duplicate, timeout, and negative-path scenarios.
· Deployment and operational support within the existing Azure environment, working closely with DevOps and platform engineering.
Key Responsibilities
· Design, develop, debug, and complete existing workflows without defaulting to unnecessary rewrites.
· Build secure, versioned, reliable APIs using C#/.NET and PostgreSQL.
· Develop responsive and operationally effective React/TypeScript interfaces integrated with backend transaction states.
· Implement safe idempotency and retry behavior so duplicate requests cannot create duplicate financial movements.
· Implement explicit transaction and balance states and ensure valid state transitions.
· Capture provider request/response evidence, provider IDs, event IDs, timestamps, correlation IDs, payload hashes, and immutable status history where required.
· Verify webhook authenticity, deduplicate events, handle replay and out-of-order events, and manage provider failures gracefully.
· Use reversal, adjustment, or correction entries rather than destructive updates for financial records.
· Implement role-based access control, permissions, authentication, and secure handling of sensitive operations.
· Work with QA to create meaningful automated coverage, especially for failure, duplicate, timeout, return, reversal, and reconciliation scenarios.
· Investigate production issues using application logs, database state, provider evidence, and monitoring data.
· Collaborate with Product, QA, DevOps, Operations, Compliance, and other engineers to deliver production-ready features.
Required Skills & Experience
· 5+ years of professional software engineering experience, with strong full-stack development experience.
· Strong hands-on experience with C# and modern .NET / ASP.NET Core.
· Strong React and TypeScript experience, including component design, forms, tables, state management, and API integration.
· Strong PostgreSQL and relational database development skills, including schema design, queries, transactions, indexing, and performance tuning.
· Solid experience designing and consuming REST APIs and versioned API contracts.
· Practical experience with asynchronous processing, queues, retries, webhooks, distributed systems, and state-machine-style workflows.
· Strong understanding of authentication and authorization, including OAuth/OIDC, roles, permissions, API keys, or equivalent mechanisms.
· Experience writing automated unit and integration tests and contributing to end-to-end testing.
· Ability to debug complex production workflows across frontend, backend, database, integrations, and infrastructure.
· Strong understanding of clean code, SOLID principles, design patterns, code review, Git, and engineering best practices.
Strongly Preferred
· Experience in FinTech, payments, banking, treasury, accounting, money movement, or other financial systems.
· Experience with double-entry accounting or immutable financial ledgers.
· Experience with payout, pay-in, ACH, wire, SWIFT, FX, stablecoin, collections, or reconciliation workflows.
· Azure experience with AKS/App Services, Azure Service Bus, Key Vault, Blob Storage, managed identity, monitoring, and application insights.
· Experience integrating imperfect or inconsistently documented third-party APIs.
· Experience with CI/CD pipelines and Azure DevOps.
· Experience with Playwright, Cypress, Postman/Newman, Pact, or similar testing tools.
· Experience working in regulated or compliance-sensitive environments.
What Good Looks Like
· You understand that a provider-submitted transaction is not necessarily a settled transaction.
· You design retries and idempotency so financial operations remain safe under duplicate requests and provider replays.
· You clearly distinguish failed, rejected, returned, cancelled, reversed, pending, processing, and completed outcomes.
· You treat auditability, reconciliation evidence, and data integrity as part of the product definition of done.
· You can explain how a transaction moves from API request through provider processing, ledger posting, reconciliation, and final status.
· You build frontend experiences that make financial uncertainty and operational exceptions clear rather than hiding them behind generic statuses.
· You are comfortable owning a feature end-to-end and working hands-on across the stack.
Technology Environment
· Backend: C#, .NET / ASP.NET Core, REST APIs
· Frontend: React, TypeScript
· Database: PostgreSQL
· Cloud & Platform: Microsoft Azure, AKS / App Services, Service Bus, Key Vault, Blob Storage
· Engineering: Git, CI/CD, automated testing, observability and production support
· Integration: Third-party financial/payment providers, webhooks, asynchronous messaging and reconciliation
Why Join Us?
· Work on technically challenging, revenue-critical financial technology.
· Own features across the complete technology stack rather than being limited to a single layer.
· Solve real-world problems involving payments, distributed systems, reconciliation, data integrity, and provider integrations.
· Work with an experienced engineering team and collaborate across product, engineering, QA, operations, compliance, and platform teams.
· Have a direct impact on building reliable and scalable financial infrastructure.
How to Apply
If you are a senior full-stack engineer who enjoys solving complex engineering problems and wants to work on financial technology where correctness, reliability, and engineering quality matter, we would love to hear from you.