Senior Staff Software Engineer, Backend

Affirm
Summary
Join Affirm's Online Storage team as a highly experienced database engineer to design, build, and maintain a scalable datastore platform. Collaborate with various teams to meet database needs, provide architectural guidance, and participate in on-call rotations. You will lead technical strategies, establish best practices, and mentor junior engineers. This role requires extensive experience with MySQL, Distributed SQL, and distributed systems, along with proficiency in multiple programming languages. Affirm offers a competitive compensation package including comprehensive health benefits, flexible spending stipends, generous time off, and an employee stock purchase plan.
Requirements
- Experience: 10+ years of experience in software engineering, with a proven track record of delivering complex software solutions that improve availability, performance and scalability of the infrastructure
- Database Expertise: 6+ years of hands-on experience with MySQL and Distributed SQL, including schema design, query optimization, and performance tuning
- Distributed Systems: Deep understanding of distributed systems concepts and experience with technologies like consensus algorithms, distributed transactions, and data replication
- Problem Solving: Exceptional problem-solving and analytical skills, with the ability to identify, and resolve complex technical challenges and establish long-lasting solutions/processes
- Programming Skills: Proficiency in at least two of Kotlin, Python, Go, Rust, with a strong emphasis on clean, maintainable code
- Leadership: Demonstrated leadership and mentorship skills, with the ability to inspire and guide others. You can also work cross-functionally addressing technical challenges and influencing roadmaps outside your direct area of ownership
- Infrastructure as a Code (IaaC): Strong proficiency in operating automation tools to manage database infra like Terraform and Ansible
- Communication: Excellent communication and interpersonal skills, with the ability to clearly articulate technical ideas to both technical and non-technical audiences
- This position requires either equivalent practical experience or a Bachelorβs degree in a related field
Responsibilities
- Help design and build a scalable datastore platform, aligning strategies with Affirm's goals, and leveraging experience in creating multi-region, horizontally scalable, globally available, and high-performance datastore solutions
- Collaborate with other teams on their database needs and provide continuous guidance on design and architecture
- Participate in an on-call rotation and collaborate with other teams such as SRE to solve production issues
- Upgrade, cost optimize, and maintain our fleet of databases
- Lead and develop technical strategies to build and maintain self-service database platforms aligned with Affirms long-term architectural vision
- Establish the best practices in development of database solutions and management to provide critical support for operating systems at scale. These include schema/data migrations, disaster recovery, observability, sharding and performance tuning
- Ensure adoption of the best practices to improve production health
- Stay ahead of industry trends in storage technologies and solutions and identify opportunities to innovate and improve our storage offerings
- Mentor engineers providing guidance on new storage technologies, development, operations and foster a culture of innovation and technical excellence
- Architect and Implement: Design, develop, and maintain core components of OnStor's cloud-based data management platform, with a focus on scalability, performance, and reliability
- Database Expertise: Leverage your deep knowledge of MySQL and Distributed SQL to optimize database performance, ensure data integrity, and implement efficient data access patterns. Should possess deep understanding of Database fundamentals including scaling, partitioning, sharding and performance tuning in multiple functional environments. Strong background and expertise in building and operating databases in cloud environments. Expertise in database benchmarking, load testing, and capacity planning. Familiarity with connection poolers and proxies such as ProxySQL, RDS Proxy Pg Bouncer, etc
- Distributed Systems: Tackle the challenges of large-scale distributed systems, including data partitioning, replication, and consistency models
- Collaboration: Work closely with product managers to translate business requirements into technical solutions, and with fellow engineers to deliver high-quality software
- Mentorship: Guide and mentor junior engineers, sharing your expertise and fostering a culture of technical excellence
- Innovation: Stay ahead of the curve by researching and experimenting with emerging technologies and trends in the database and distributed systems space
Preferred Qualifications
Innovate: You drive innovation in the platforms you build and operate, and have experience contributing to open-source projects. You are also passionate about engaging with the Distributed systems/ Databases community
Benefits
- 100% subsidized medical coverage, dental and vision for you and your dependents
- Monthly stipends for health, wellness and tech spending
- Health care coverage - Affirm covers all premiums for all levels of coverage for you and your dependents
- Flexible Spending Wallets - generous stipends for spending on Technology, Food, various Lifestyle needs, and family forming expenses
- Time off - competitive vacation and holiday schedules allowing you to take time off to rest and recharge
- ESPP - An employee stock purchase plan enabling you to buy shares of Affirm at a discount
- Remote work