Senior Software Engineer, Recommendations
Build and scale backend recommendation systems that determine what riders see, using rider context and signals to improve user experience. The role requires 5+ years of software engineering experience, Python and Go expertise, cloud and distributed-systems experience, and strong system-design and mentoring skills.
About the job
Responsibilities
- Establish engineering best practices and patterns, uplift the team's craft, and drive engineering excellence.
- Drive high-impact projects and innovate solutions that improve user experience.
- Design scalable systems for large, complex features from conception through launch.
- Mentor engineers and provide technical guidance.
- Promote AI tools and share practices that improve engineering productivity.
- Write well-tested, readable, and maintainable code.
- Participate in code reviews and the on-call rotation.
- Identify, triage, debug, and resolve application and platform issues.
- Communicate technical trade-offs clearly.
- Manage project priorities, deadlines, and deliverables.
Requirements
- Bachelor's or master's degree, or equivalent practical experience, in Computer Engineering, Computer Science, or a related field.
- 5+ years of software engineering or production infrastructure experience.
- Experience with Python and Go.
- Experience with cloud platforms such as AWS, GCP, or Azure.
- Experience with distributed systems and databases such as PostgreSQL or DynamoDB.
- Proficiency using AI tools such as Copilot, Claude Code, or Cursor.
- Proficiency in object-oriented programming, data structures, and algorithms.
- Ability to work collaboratively with cross-functional teams.
Nice-to-haves
- Experience building real-time serving systems for machine learning models.
- Experience with recommendation or ranking systems.
- Experience with feature stores.
- Experience with online/offline experimentation frameworks.
Compensation and Benefits
- Base pay range: CAD $136,000–$170,000, excluding potential equity, bonus, and benefits.
- Extended health and dental coverage, life insurance, and disability benefits.
- Mental health, family building, child care, and pet benefits.
- Health Care Savings Account.
- RRSP plan.
- Flexible paid time off for salaried team members; hourly team members receive 15 days paid time off plus an additional day per year of service.
- 18 weeks of paid parental leave top-up for eligible biological, adoptive, and foster parents.
- Subsidized commuter benefits.
Skills
Python, Go, AWS, GCP, Azure, Distributed Systems, Postgres, DynamoDB, AI Tools, Object-Oriented Programming, Data Structures, Algorithms, Machine Learning Models, Recommendation Systems, Feature Stores
Similar jobs
Backend Engineering jobsSenior software engineer designing and scaling secure server-side services for Okta’s device identity platform. The role requires strong Java and Spring expertise, database and API design experience, and the ability to mentor engineers while driving scalable, secure development practices.
Build backend infrastructure, APIs, and orchestration layers connecting Lyft with emerging AI ecosystems and devices. The role requires 5+ years of software engineering experience, Python and Go expertise, cloud and distributed-systems knowledge, and experience designing scalable systems.
Build and secure core distributed-database features in a C++ codebase, focusing on cryptography, identity and access, networking, and system integrity. The role requires 5+ years of distributed-systems experience, proficiency in a compiled language, and strong computer architecture and software-design fundamentals.
Develops and supports open-source Python drivers and libraries for MongoDB, collaborates on APIs and new database features, investigates user issues, and contributes to design and code quality. The role requires substantial Python experience, strong ecosystem knowledge, and effective collaboration.
Senior Software Engineer responsible for evolving GitLab’s authorization model across its Ruby on Rails monolith and next-generation policy engine. The role requires production Rails experience, authorization expertise, security judgment, API knowledge, and strong written communication.