Senior Backend Software Engineer

Senior Backend Software Engineer

Full-Time 123750 - 151250 $ / year (est.) Remote
A

At a Glance

  • Tasks: Architect and scale relational and distributed SQL databases while improving mission-critical infrastructure.
  • Company: Join a leading tech company focused on innovative data solutions.
  • Benefits: Flexible remote work, generous time off, health benefits, and learning opportunities.
  • Other info: Collaborative culture with strong support for personal and professional growth.
  • Why this job: Make a real impact on financial products that improve lives with cutting-edge technology.
  • Qualifications: 5+ years in software engineering with expertise in database technologies and Kubernetes.

The predicted salary is between 123750 - 151250 $ per year.

The Data and Storage Services team is responsible for affirm’s data infrastructure across OLTP and OLAP systems, spanning critical online checkout databases, batch orchestration, streaming infrastructure, event-driven frameworks, BI, analytics tooling, large-scale data platforms, and agentic data tools such as semantic layers and internal platform data applications. Our mission is to provide trustworthy, intuitive, and cost-efficient solutions for affirmers to secure, store, analyze, and transform data at exceptional scale.

The online storage team provides a set of managed databases as a platform, used to persist data for all affirm services. Our platform enables self-service access to OLTP storage systems, including relational db (mySQL), kv (dynamoDB), distributed sql (tiDB) and cache (redis). As a team, we are responsible for various data and access patterns, including but not limited to mission-critical financial transactional data, data science models, and any new persistence use case. These responsibilities require us to learn and gain deep expertise in various database systems.

We are looking for a talented senior software engineer who can architect, build and scale relational and distributed sql databases identifying opportunities to improve how we build, productionize, operate and improve this mission-critical infrastructure to unlock substantial value within our business. You’ll have the opportunity to directly influence your team’s roadmap in close collaboration with your peers, share your knowledge and expertise with others and learn from some of the best on our shared mission to deliver honest financial products that improve lives.

You will build and operate the control plane for large-scale distributed sql databases such as mysql and tidb, automating provisioning, failover, backups and upgrades end to end. You will design and execute reliability-focused schema and data migrations across multi-tenant database clusters, with zero downtime for the products that depend on them. You will own the networking stack that connects services to storage on kubernetes, including connection proxies such as proxysql, and tune it for latency, resilience and failover.

You will be responsible for owning and delivering 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” & 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.

Benefits

  • Compensation: We have a simple, flexible, and transparent remote-first compensation structure so you can make the best decisions for yourself and your family.
  • Spending wallets: Access tech, food, lifestyle, and family planning wallets for your expenses.
  • Supportive communities: Get involved with our employee resource groups and community groups.
  • Remote-first workforce: If your role is remote, you can set up shop anywhere in your home country.
  • Generous time off: Take the time you need when life happens.
  • Health benefits: Get a plan that fits your needs.
  • Mental healthcare: Take care of your mind with great mental health programs.
  • Parental leave: Birth and non-birth parents get 18 weeks’ paid leave. Plus, a 4-week return-to-work transition program, at full base pay.
  • Away days: We offer 20 company-wide paid days off—which help our teams collectively pause to recharge.
  • Learning & development: Engage in exciting learning programs to level up your growth.

You have in-depth, hands-on experience with large-scale database deployments in a production environment. 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 understand kubernetes networking, service discovery and tls well enough to debug connection and failover problems between services and databases.

You have built control-plane or automation tooling for databases, such as provisioning, failover, upgrades or schema migrations, ideally on kubernetes. You have expertise in database benchmarking, load testing, and capacity planning. Your experience demonstrates that you take ownership of your growth, proactively seeking feedback from your team, your manager, and your stakeholders.

Solid understanding of distributed database architecture, data modeling, and performance tuning. Particularly, expertise in sql tuning and performance optimization techniques. You have expertise in distributed databases and database technologies such as mysql (Preferred), tidb (Preferred), postgres, spanner, vitess, cockroachdb etc. You have executed zero-downtime migrations and major version upgrades on production databases, and have built cli tooling or runbooks to make those procedures repeatable.

You are familiar with connection poolers and proxies such as proxysql, rds proxy, pg bouncer, pgdog etc. You are experienced in designing, developing and launching backend systems at scale technologies like python, kotlin, aws, mysql, terraform and kubernetes. This position requires either equivalent practical experience or a bachelor’s degree in a related field.

You have strong verbal and written communication skills that support effective collaboration with our global engineering team. 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. You have a total of 5+ years of experience as a software engineer.

Senior Backend Software Engineer employer: Affirm

At Affirm, we pride ourselves on being a remote-first employer that values flexibility and inclusivity, allowing our Machine Learning Engineers to thrive in a supportive environment. With comprehensive health coverage, generous time-off policies, and opportunities for professional growth, we empower our employees to take ownership of their careers while contributing to meaningful projects that redefine credit. Join us in a culture that prioritizes transparency and collaboration, where your contributions directly impact the future of financial technology.

A

Contact Details:

Affirm Recruitment Team

We think you need these skills to ace Senior Backend Software Engineer

Large-scale Database Deployments
Relational Database Management (MySQL, TiDB)
Distributed SQL Databases
Kubernetes Networking
Automation Tooling for Databases
Schema Migrations
Database Benchmarking