Senior Backend Engineer - Payroll - Toronto
Accounting & Finance, Software Engineering
Canada
CAD 148k-189k / year
Posted on Jun 17, 2026
As a Senior Backend Engineer on the team, you’ll have a key role in developing our Payroll product and its unique features, working closely with our Product team. You are passionate about software engineering and building a product end-to-end. You will be responsible for owning the dev cycle from the technical design, through coding and testing, to deployment and monitoring. We are an agentic-first company. We work in a true continuous delivery environment with fully automated QA processes on a microservices architecture, deploying to production dozens of times every day.
- Physically located in the Toronto metropolitan area.
- 6+ years of professional experience as a software engineer, strongly emphasizing backend development for SaaS applications.
- Experience building and owning customer-facing features that have shipped to production.
- Excellent knowledge of software design and scalable architecture.
- Experience with Java and/or Kotlin.
- Experience with testing methodologies - unit-testing, TDD, mocking, etc.
- Experience with AWS or an equivalent cloud platform.
- Experience with relational databases like PostgreSQL, MySQL, etc.
- Independent, fast learner, and excited about learning new technologies.
- Proactive team player with a desire to impact our team, our product, and our customers.
The following is a big plus:
- Experience developing a payroll / payments / HR related product.
- Design, develop, and maintain highly scalable back-end systems for our Payroll product using a modern microservices architecture.
- Collaborate with product managers, front-end engineers, and other stakeholders to implement new features and ensure alignment with the overall product roadmap.
- Write clean, maintainable, and efficient code in Kotlin, Scala, or Java (or be eager to learn Kotlin).
- Build and optimize APIs to support seamless integrations across our platform.
- Participate in code reviews and provide constructive feedback to team members.
- Take ownership of the full development cycle, including technical design, implementation, testing, deployment, and monitoring.
- Work in a continuous delivery environment with automated QA processes to ensure robust and reliable releases.