Job Description
Affirm is seeking a Senior Software Engineer to join their Online Storage team. This role is based in Canada and can be performed remotely. Affirm is reinventing credit to make it more honest and friendly, giving consumers the flexibility to buy now and pay later without any hidden fees or compounding interest. The Online Storage team provides managed databases as a platform, used to persist data for all Affirm services. The ideal candidate will combine a strong understanding of application architecture, smooth developer experiences and fast-paced execution to deliver a powerful self-serve system to help Affirm scale easily.
Role involves:
- Leading projects towards improving database architecture.
- Working with engineers managing Affirm’s distributed database technologies.
- Designing and building highly durable and strongly consistent database as service architecture.
- Designing and building solutions at scale for challenges such as multi-region, active resharding and globally available services.
- Working closely with product teams to understand business requirements.
- Assisting partners achieve better query performance.
- Developing and enforcing best practices in database design and management.
- Staying abreast of industry trends and emerging technologies.
- Participating in an on-call rotation.
- Leading and mentoring engineers.
Requirements:
- Bachelors or Masters degree in Computer Science with 5+ years of experience as a software engineer with leadership exposure and experience mentoring junior engineers.
- In-depth, hands-on experience with large-scale database deployments in a production environment.
- Expertise in distributed databases and database technologies such as MySQL InnoDB storage (Preferred), Postgres, Spanner, Vitess, TiDB, CockroachDB etc
- Solid understanding of distributed database architecture, data modeling, and performance tuning. Particularly, expertise in SQL tuning and performance optimization techniques.
- Expertise in Database/Table and backup-recovery management.
- Expertise in SQL tuning and performance optimization techniques.
- Expertise in database benchmarking, load testings, and capacity planning.
- Familiarity with connection poolers and proxies such as ProxySQL, RDS Proxy, Pg Bouncer, etc.
- Proficiency in Python or Kotlin or both.
- Experience with AWS and Kubernetes.
- Experience building software with IaC (terraform or crossplane) frameworks and tools
- Exceptional communication skills with the ability to engage effectively with both technical and non-technical stakeholders.
- Expertise to create and triage database alerts and issues, identify root causes, and implement corrective solutions.
Affirm offers:
- Competitive benefits that are anchored to our core value of people come first.
- 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