SlipstreamJobs tracks this role from the company's public career site. Apply directly on the employer's site.
Salary: CAD 133,000 - 183,000 / annual
Affirm is a fintech company that provides transparent, predictable payment solutions. The Data and Storage Services team owns Affirm's data infrastructure across OLTP and OLAP systems, including online checkout databases, batch orchestration, streaming infrastructure, and large-scale data platforms.
The Online Storage team manages a set of managed databases as a platform for all Affirm services, supporting multiple persistence patterns including relational databases (MySQL), key-value stores (DynamoDB), distributed SQL (TiDB), and caching (Redis). You will join the Cache Services team, which is responsible for building and scaling Redis and Valkey infrastructure that handles mission-critical financial transactional data.
In this role, you will:
- Build and scale Affirm's Cache Services on Redis and Valkey, owning cluster migrations end-to-end and delivering them in phases
- Productionize cache clusters through capacity and shard planning, failover and replication setup, upgrades, and staged rollouts with rollback paths
- Replace manual cache provisioning and configuration requests with automated, audited self-service workflows
- Operate the fleet in production by defining SLOs, building alerting for hot keys, memory pressure, and replication lag, and using on-call findings to reduce operational overhead
- Partner with client teams on caching strategy (key design, TTLs, consistency, client timeouts) and feed fleet data into the team's roadmap
- Break down larger projects into individual tasks with support from your tech lead and manager, delivering work in multiple phases
- Collaborate with product management, design, and analytics on ideation, articulating technical constraints, and partnering on decisions that consider risks and trade-offs
- Support operations and availability by creating and monitoring metrics, escalating when needed, and participating in on-call efforts
- Contribute to team community through growth and development activities, including participation in the interview process
Requirements:
- 2+ years of experience as a software engineer
- Experience designing, developing, and launching backend systems; proficiency in Python or Kotlin
- Familiarity with distributed systems building blocks and technologies including AWS, MySQL, Redis/Valkey, Terraform, and Kubernetes
- Production experience with Redis, Valkey, or comparable in-memory stores; understanding of replication, persistence, cluster mode, eviction, and failure modes
- Ability to reason about caching workloads end-to-end: hit rates, tail latency, hot keys, stampedes, and consistency with source of truth
- Experience automating infrastructure operations with Terraform, Kubernetes, and Python; preference for tested playbooks over manual runbooks
- Experience carrying on-call for stateful services and taking incidents from metrics to root cause to durable fix
- Demonstrated ability to translate simple problems or business scenarios into solutions that interact with multiple software components, executing with clear, well-tested, extensible code
- Comfort navigating large codebases, debugging others' code, and providing feedback through code reviews
- Demonstrated ownership of your growth, proactively seeking feedback from team, manager, and stakeholders
- Strong verbal and written communication skills supporting effective collaboration with global engineering teams