Remote
Staff Software Engineer, Affirm Bank
About this role
At Affirm, we exist for the moments that matter—giving people a clear, predictable way to pay over time, with no hidden fees, no surprises, and no tradeoffs on what matters most. About the Role Affirm is building its own bank — and this role is one of the most senior individual-contributor seats on the engineering team that runs it. We're looking for a Staff Software Engineer to be a technical anchor for a deliberately small, AI-native team that owns the systems behind Affirm's bank: vendor-integrated banking infrastructure, the data platform, and the operational tooling that holds it all together.
You'll set technical direction across that surface area, own the hardest problems on the team — including the Bank ↔ Affirm Inc integration boundary — and operate with direct exposure to senior bank and Affirm leadership. This is a rare opportunity to shape a new business from its very first systems — a startup-like build inside an established company — at a level of ownership that goes beyond delivering your own projects.
As a Staff engineer here you set the bar: the architecture, the standards, and the technical strategy that the rest of the team builds against. The team is small and AI-native, the surface area is broad, and the decisions you make carry far — every system you ship serves real customers under a real bank charter, and the patterns you establish determine what the bank becomes. What You'll Do Set technical direction across the bank's systems.
Own the medium-to-long-term technical strategy for the bank's core surfaces — cloud infrastructure, data platform, core banking configuration, CI/CD, networking, and the Bank ↔ Affirm Inc integration — and make the architecture calls the rest of the team builds against. Generalist breadth is expected; you go deep where the risk is highest. Own the hardest problems end-to-end. Personally design, build, integrate, and operate the most ambiguous and highest-stakes pieces of the stack, and own incident response for them.
You take the problems no one else can fully scope and turn them into well-defined systems with clear failure domains, monitoring, and runbooks. Be the force multiplier on a small team. Set and hold the bar for code review, design review, and examiner-readable documentation. Establish the patterns and standards that let a deliberately small team punch far above its size, and level up every engineer who joins after you.