SlipstreamJobs tracks this role from the company's public career site. Apply directly on the employer's site.
Salary: CAD 153,000 - 213,000 / annual
Affirm is seeking a Senior Software Engineer to join the Data and Storage Services team, specifically the Online Storage team. This team is responsible for Affirm's data infrastructure across OLTP and OLAP systems, including critical online checkout databases, batch orchestration, streaming infrastructure, and large-scale data platforms.
The Online Storage team provides managed databases as a platform for all Affirm services, supporting multiple database systems including MySQL, DynamoDB, TiDB, and Redis. The team handles mission-critical financial transactional data, data science models, and new persistence use cases.
In this role, you will:
- Build and operate the control plane for large-scale distributed SQL databases (MySQL, TiDB), automating provisioning, failover, backups, and upgrades end-to-end
- Design and execute reliability-focused schema and data migrations across multi-tenant database clusters with zero downtime
- Own the networking stack connecting services to storage on Kubernetes, including connection proxies like ProxySQL, tuning for latency, resilience, and failover
- Own and deliver quarterly goals for your team, leading engineers through ambiguity to solve open-ended problems
- Support peers and stakeholders in the product development lifecycle by collaborating with product management, design, and analytics
- Proactively identify and lead solutions for project, process, technology, or business issues
- Support operations and availability by creating and monitoring metrics, escalating when needed, and participating in on-call efforts
- Foster a culture of quality and ownership by setting or improving code review and design standards
- Develop talent on your team through feedback, guidance, and leading by example
Requirements:
- 5+ years of experience as a software engineer
- Experience designing, developing, and launching backend systems at scale using Python, Kotlin, AWS, MySQL, Terraform, and Kubernetes
- In-depth, hands-on experience with large-scale database deployments in production environments
- Expertise in distributed databases such as MySQL (preferred), TiDB (preferred), Postgres, Spanner, Vitess, or CockroachDB
- Solid understanding of distributed database architecture, data modeling, and performance tuning, particularly SQL tuning and optimization techniques
- Expertise in database benchmarking, load testing, and capacity planning
- Familiarity with connection poolers and proxies (ProxySQL, RDS Proxy, PgBouncer, PgDog, etc.)
- Experience building control-plane or automation tooling for databases (provisioning, failover, upgrades, schema migrations), ideally on Kubernetes
- Experience executing zero-downtime migrations and major version upgrades on production databases, with CLI tooling or runbooks
- Understanding of Kubernetes networking, service discovery, and TLS for debugging connection and failover problems
- Experience defining technical plans for significant features or system components with elegant, simple, and extensible design
- Ability to make significant changes in large codebases safely
- Demonstrated ownership of personal growth and proactive feedback-seeking
- Strong verbal and written communication skills
- Bachelor's degree in a related field or equivalent practical experience