
Senior Software Engineer, Backend
Job description
About the role
You will own and deliver quarterly goals for your team, leading engineers on your team through ambiguity to solve open-ended problems, and ensuring that everyone is supported throughout delivery. 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 proactively identify project, process, technology or business issues, advocate for them, and lead in solving them. 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" and on-call efforts. You will foster a culture of quality and ownership on your team by setting or improving code review and design standards for your team, and advocating for them beyond your team through your writing and tech talks. You will help develop talent on your team by providing feedback and guidance, and leading by example. You will blend traditional distributed systems engineering with AI-assisted development to give teams a single place to understand, debug, and improve the health of their services in a highly creative, hands-on environment.
Key facts
What you'll do
- Drive the technical vision and quarterly objectives for your backend service area, translating ambiguous problems into concrete, actionable plans.
- Design, develop, and launch backend systems at scale using technologies like Python, Kotlin, AWS, MySQL, and Kubernetes with an emphasis on reliability and performance.
- Build and maintain a next-generation reliability platform that provides teams with a single source of truth for understanding, debugging, and improving service health.
- Integrate practical use of LLMs or AI frameworks to enhance automation and guidance, ensuring guardrails and citations are consistently applied.
- Collaborate with product management, design, and analytics to articulate technical constraints and partner on decisions that properly weigh risks and trade-offs.
- Take ownership of project, process, technology, or business issues, advocating for them and leading solutions from conception through execution.
- Create and monitor operational metrics, escalate incidents appropriately, and support on-call responsibilities to keep production systems reliable.
- Define and evolve technical design standards and code review practices for your team, ensuring clarity, extensibility, and ease of use for all engineers.
- Make significant, safe changes in a large existing codebase by developing and maintaining a robust suite of tools and practices.
- Mentor and develop talent on your team by giving feedback, guidance, and leading by example in all engineering activities.
- Write clear, high-quality code and documentation that is easily understood and used by peers across the organization.
- Contribute to technical talks and written communication that elevate engineering practices beyond your immediate team.
- Partner closely with cross-functional stakeholders throughout the product lifecycle to align on goals and delivery outcomes.
- Ensure services you own meet high standards of availability, maintainability, and scalability in a remote-first production environment.
Requirements
- You have a total of 4+ years of experience as a software engineer.
- You are experienced in designing, developing and launching backend systems at scale using technologies like Python, Kotlin, AWS, MySQL, and Kubernetes.
- You have experience shipping web apps using declarative UI frameworks like React or Vue.
- You have practical use of LLMs or AI frameworks to enhance automation and guidance with guardrails and citations.
- You have experience defining a technical plan for the delivery of a significant feature or system component with an elegant, simple, and extensible design.
- You write high quality code that is easily understood and used by others.
- You are proficient at making significant changes in a large code base, and have developed a suite of tools and practices that enable you and your team to do so safely.
- Your experience demonstrates that you take ownership of your growth, proactively seeking feedback from your team, your manager, and your stakeholders.
- You have strong verbal and written communication skills that support effective collaboration with our global engineering team.
- This position requires either equivalent practical experience or a Bachelor's degree in a related field.
Practical notes
- This remote role is open only to candidates residing in Alberta, British Columbia, Manitoba, New Brunswick, Newfoundland and Labrador, Nova Scotia, Ontario, Prince Edward Island, or Saskatchewan.
- Base Pay Grade
- N
- Equity Grade - 6
- CAN base pay range per year: $153,000 - $213,000 CAD.
- Employees new to Affirm typically come in at the start of the pay range. Affirm focuses on providing a simple and transparent pay structure which is based on a variety of factors, including location, experience and job-related skills.
- Base pay is part of a total compensation package that may include monthly stipends for health, wellness and tech spending, and benefits (including 100% subsidized medical coverage, dental and vision for you and your dependents).
- In addition, the employees may be eligible for equity rewards offered by Affirm Holdings, Inc. (parent company).
- #LI-Remote
- This position requires either equivalent practical experience or a Bachelor's degree in a related field.
- You will occasionally be required to work out of the office for team gatherings and planning sessions.
- Applications will be reviewed on a rolling basis until the role is filled.
- Candidates must be authorized to work in Canada without sponsorship.
- New hires are expected to start within a reasonable timeframe of receiving an offer.
- This role is full-time and remote within Canada.
- Affirm is a remote-first company where the majority of roles are remote, and you can work almost anywhere within the country of employment.
- You will have the flexibility to work remotely, with occasional in-person requirements for team collaboration and planning.
- All communication regarding the role will be conducted in English.
- The day-to-day responsibilities may involve asynchronous collaboration across multiple time zones.
- You are expected to maintain professional responsiveness and meet agreed-upon delivery commitments.
- Security and compliance with internal policies are essential components of this role.
- You will be required to adhere to Affirm's code of conduct and quality standards in all work products.
- Successful candidates will undergo a standard background check as part of the hiring process.
- This role may involve exposure to sensitive operational data in support of reliability and monitoring initiatives.
- You must be comfortable working with distributed systems and debugging production issues in a fast-paced environment.
- You should be comfortable balancing rapid iteration ("vibe coding") with rigorous quality and reliability standards.
- Ownership of learning and self-improvement is expected, including staying current with industry trends and best practices.
- This role will require participation in on-call rotations to respond to production incidents.
- You will contribute to post-incident reviews and continuous improvement initiatives.
- Collaboration tools such as issue trackers, pull requests, and documentation platforms will be central to your workflow.
- Effective time management and prioritization are critical due to the asynchronous nature of remote work.
- You will have opportunities to influence engineering culture and processes through your contributions and leadership.
- This position is not eligible for relocation assistance.
- Proficiency in at least one modern programming language is required.
- Experience with infrastructure as code practices is strongly preferred.
- Familiarity with financial services and regulated environments is a plus.
- You should have a demonstrated ability to work independently with minimal supervision.
- The role involves both strategic planning and hands-on implementation.
- You will interface with cross-functional teams including product, design, and analytics.
- This role supports Affirm's mission of making credit more honest and friendly for consumers.
- You will have the chance to work on high-visibility reliability initiatives that impact the entire organization.
- Continuous learning and knowledge sharing are encouraged within the team.
- You will be expected to balance autonomy with alignment to company goals and priorities.
- The role includes regular performance feedback and career development discussions.
- You will have access to Affirm's learning and development resources to support professional growth.
- This position requires resilience and adaptability in a dynamic, fast-moving startup environment.
- You will contribute to creating scalable and maintainable systems that enhance customer trust.
- The role provides exposure to cutting-edge technologies in the payments and credit space.
- You will have opportunities to present your work and insights to broader engineering and executive audiences.
- Strong problem-solving skills and a methodical approach to debugging are essential.
- You will be expected to document decisions and trade-offs for future maintainability.
- This role is suitable for an experienced engineer who thrives in ownership-driven environments.
- You will work closely with data to inform reliability improvements and prioritize initiatives.
- The position requires comfort with both technical depth and cross-team collaboration.
- You will help establish best practices for reliability engineering across the organization.
- This role offers the flexibility to work remotely while maintaining close alignment with team objectives.
- You will be part of a growing engineering organization that values transparency and impact.
- The role includes opportunities to mentor junior engineers and contribute to technical hiring decisions.
- You will have the ability to propose and prioritize improvements to the reliability platform.
- This position requires a proactive mindset and the ability to anticipate and mitigate risks.
- You will work with distributed teams and must be comfortable with asynchronous communication.
- The role includes regular interactions with stakeholders to align on priorities and deliver outcomes.
- You will be expected to maintain a high standard of professionalism and ownership in all work.
- This role supports Affirm's commitment to innovation and excellence in financial services technology.
- You will have the opportunity to shape the future of reliability engineering within the company.
- The position requires a strong commitment to quality, security, and operational excellence.
- You will be part of a team that values diverse perspectives and collaborative problem-solving.
- This role includes the potential for growth into senior technical leadership positions over time.
- You will have access to competitive compensation and benefits as outlined in the job details.
- The role is open to Canadian residents only, in accordance with location eligibility requirements.
- You will be expected to adhere to Affirm's remote work policies and guidelines.
- This position requires a reliable internet connection and a suitable workspace for remote work.
- You will have the ability to influence technical direction and contribute to long-term platform strategy.
- This role is part of Affirm's ongoing investment in world-class reliability and engineering excellence.