Remote job
Senior Backend Engineer (Python)
Job details
About this role
Role overview This is a senior backend engineering role centered on the Python services that hold other people's transactional data. The core mission is keeping the state machine correct under concurrency, because when it is wrong, somebody's money is wrong. Expect to extend payment, order, inventory, and ledger services while hardening invariants across multi-tenant data paths and an AI agent surface.
Responsibilities - Extend and maintain transactional services covering cart, order, authorize/capture/refund/void flows, two-phase inventory reserve-and-commit, subscriptions with dunning, and a double-entry loyalty ledger. - Close the open saga compensation work so that half-finished workflows walk back correctly, with a contract suite that surfaces broken templates rather than passing either way. - Preserve idempotency at the database layer so a retried request is applied exactly once, with conflicts surfacing as 409s rather than silent duplicates. - Build features against both a MongoDB Atlas primary backend and a PostgreSQL backend that stores every tenant's records in a single partitioned JSONB table with no per-schema DDL. - Develop the MCP server that external AI agents drive, ensuring every tool has a real authorization story and scoped keys cannot escape their permissions. - Move the boundary between the synchronous Bottle/gunicorn core and the FastAPI/asyncio analytics services as new work demands.
Requirements - 5+ years of production backend engineering with real experience in distributed systems, including partial failure, retries, and ordering. - Deep comfort with Python across both synchronous, greenlet-based stacks and async stacks using FastAPI, Pydantic, and asyncio. - Database fluency beyond the ORM, including query plans, isolation levels, indexing strategy, and the impact of long-running transactions on MongoDB and PostgreSQL/JSONB. - API contract discipline, with intent behind error responses and a clear reason for returning 409 over 500. - Hands-on experience building and shipping an MCP server, not just familiarity with the protocol.
Nice to have Multi-tenant SaaS at scale, payments or ledger systems background, an MCP server already written, experience finding and writing an honest RCA for a security bug you owned, and an informed opinion on whether dormant Kafka scaffolding should be lit up.