Remote
Software Engineer II, Backend (Purchasing Power - Core)
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. Join the Purchasing Power org and partner with Product and Credit Risk to solve complex challenges for customers while enabling Affirm to be where consumers need us most. As part of the team, you will focus on designing and implementing new features in our underwriting platform to support our partnered merchants and users across a wide number of interfaces, including Affirm Card, e-commerce sites, and the Affirm app.
You will have a direct impact on the performance of Affirm as we look to continue to grow and expand Affirm in a safe and responsible way for our customers! What you'll do With the support of your team’s tech lead and manager, you will break down larger projects into individual tasks, deliver them in multiple phases, and collaborate with others to ensure timely delivery of your work. You will support your peers and stakeholders in the product development lifecycle by collaborating with product management, design & analytics by participating in ideation, articulating technical constraints, and partnering on decisions that properly consider risks and trade-offs.
You will support the operations and availability of your team’s artifacts by creating and monitoring metrics, escalating when needed, and supporting “keep the lights on” & on-call efforts. You will contribute to a sense of community on your team by engaging in growth and development activities such as participation in the interview process. What we look for You have a total of 1.5+ years of experience as a software engineer.
You have experience designing, developing and launching backend systems and are proficient in one of Python or Kotlin. You are familiar with the building blocks of distributed systems, and the technologies like AWS, MySQL and Kubernetes. You have mastered taking a simple problem or business scenario into a solution that interacts with multiple software components, and executing on it by writing clear, easily understood, well tested and extensible code.