Staff Software Engineer, Backend (Capacity Modeling)

AffirmAffirm·Remote(Remote US)
Software Development

WFA Digital Insight

As the demand for skilled backend engineers continues to rise, with a notable 25% growth in the remote job market in 2025, professionals with expertise in scaling and capacity modeling are in high demand. Affirm, a leader in reinventing credit, stands out for its commitment to honest and transparent financial services. This role offers a unique chance to apply your technical skills in a rapidly evolving industry. Before applying, consider your experience with distributed systems, autoscaling, and your ability to thrive in ambiguity. With the right skills, you could be part of a team that's making a significant impact in the digital payments landscape.

Job Description

About the Role

The Staff Software Engineer, Backend (Capacity Modeling) role at Affirm is a critical position that focuses on ensuring the company's systems can handle forecasted traffic, especially during peak sales events. This involves translating demand forecasts into concrete, testable capacity plans and building statistical capacity models. The role is part of the Capacity Modeling team, which plays a pivotal role in the company's ability to scale and provide seamless service to its users.

As a key member of this team, you will be responsible for setting the technical strategy for your team on a year-long time scale and helping your team tie it together with critical, business-impacting projects. This includes collaborating across teams in the product development lifecycle, ensuring technical sustainability, risks, and trade-offs are well understood and managed.

What You Will Do

  • Set technical strategy for your team on a year-long time scale
  • Collaborate across teams in the product development lifecycle
  • Act as a force-multiplier for your team through the definition and advocacy of technical solutions and operational processes
  • Take ownership of your team’s operations and availability
  • Foster a culture of quality and ownership on your team by setting code review and design standards
  • Help develop talent on your team by providing feedback and guidance
  • Ensure you have the right monitoring, triage rotations, playbooks, policies, testing, and alerting in place to support “keep the lights on” & on-call efforts
  • Lead by example in your technical expertise and collaboration

What We Are Looking For

  • 8+ years of experience designing, developing, and launching backend systems at scale
  • Experience with languages like Python or Kotlin
  • An extensive track record of developing highly available distributed systems using technologies like AWS, MySQL, Spark, and Kubernetes
  • Experience supporting scale up and down of large-scale sales events
  • Tuning autoscaling, CPU/Memory, and multi-threading for compute type workloads
  • Delivering major features, system components, or deprecating existing functionality in a system
  • Strong verbal and written communication skills
  • Bachelor’s degree in a related field or equivalent practical experience

Nice to Have

  • Experience with ElasticCache, DynamoDB, AuroraDB, or similar technologies
  • Knowledge of statistical capacity models and their application in backend systems
  • Experience in a leadership or mentorship role, guiding junior engineers

Benefits and Perks

  • Competitive salary and equity package
  • Opportunity to work with a talented team of engineers and contribute to a product that is making a significant impact in the financial services industry
  • Comprehensive health, dental, and vision insurance
  • Flexible PTO policy and remote work stipend
  • Access to cutting-edge technologies and tools
  • Ongoing learning and professional development opportunities

How to Stand Out

  • To stand out, highlight your experience with distributed systems and scalings, especially if you have worked with similar technologies like AWS or Kubernetes.
  • Make sure your portfolio includes examples of your backend development work, particularly projects that demonstrate your ability to handle large-scale traffic.
  • When interviewing, be prepared to discuss your approach to capacity modeling and how you handle ambiguity in complex systems.
  • Don't underestimate the importance of communication skills; be ready to explain technical concepts to non-technical team members.
  • Consider negotiating your salary based on your experience and the current market rate for backend engineers, and don't forget to ask about the equity package and other benefits.
  • Pay attention to the company culture and values during the interview process, as they can significantly impact your job satisfaction and growth opportunities.

This is a remote position listed on WFA Digital, the platform for professionals who work from anywhere. Browse more remote jobs across all categories.