About The Role
Location: Vancouver, BC (Hybrid)
Employment type: Full-time
Reports to: Manager, Software Development
As an experienced Senior Software Developer, you'll develop major components that power our consumer apps and global platform enabling over 17 million users to conveniently pay for parking.
Responsibilities:
- Leave your fingerprints on the design of products, architect our infrastructure, and improve technical documentation
- You are a go-to technical expert for other people in the organization, articulating technical concepts to non-technical stakeholders
- Work with your team to design and develop automated test suites and establish test plans
- Work with product management and client services to scope out work and define acceptance criteria
- Participate in code reviews to share expertise with the team, ensure code quality, and verify PCI compliance
- Where desired and appropriate participate in mob- and pair-programming sessions to distribute knowledge across the team and collaborate on finding solutions to complex problems
- Use and improve our automated CI/CD pipeline
- Provision and maintain cloud infrastructure for your team's products
- Monitor the health and success of your team's products through application and system metrics
- Own the success of the features and systems you and your team develop. This includes monitoring, investigating issues, and supporting the service during outages
- Mentor fellow team members, helping to grow new technical leaders
- Help improve development standards, tooling, and processes
- Participating in technical decision-making within the team, taking a lead role where appropriate
- Provide on-call, critical response on a rotational basis to support relevant PayByPhone development teams.
- You must maintain a personal data plan to fulfill your responsibilities for on-call support.
Required Qualifications
Essential Knowledge, Skills, and Experience
Demonstrated experience / projects
- You've worked in or want to work in an agile environment using processes like Kanban or Scrum
- Experience with automated unit testing, and an interest in techniques such as TDD and BDD
- Excellent understanding of software engineering principles
- Keep up with new technologies and find ways to improve the status quo
Technical / Hard Skills
- Expert-level ability to code in Flutter, Swift or Java/Kotlin, specific role dependant.
Other Skills
- An excellent understanding of software engineering techniques
- Worked in an agile development environment using processes like Kanban or Scrum
- Experience with relational and non-relational databases such as MySQL, MongoDB, or DynamoDB
- Experience with service-oriented or microservices architecture using synchronous (REST) and asynchronous (event-driven) integration
- Experience with refactoring
Nice to have:
- Experience with Docker, Terraform
- Familiarity with Domain Driven Design concepts
- Experience with production monitoring and observability
- You're excited about building robust and extensible 24/7 back-end services for a global market
People Management Experience
- Experience mentoring junior and intermediate developers
Years of Experience
- 5+ years' experience designing and developing clean, maintainable software that stands up to real-world users and production conditions
Education (post-secondary, certification, etc.)
- Bachelor's degree in Computer Science or Software Engineering
What We Offer
Compensation: The expected salary range for this role is $125,000 - $135,000 CAD. Final compensation will be based on factors such as experience, skills, qualifications, and internal equity.
Retirement Savings Program: Access to our retirement savings program (RRSP for Canada / 401(k) for U.S.-based employees).
Vacation: All permanent full-time employees start with 4 weeks of vacation per year.
Personal Days: We provide 5 personal days annually, in addition to paid sick days, to support flexibility and work-life balance.
Comprehensive medical & dental coverage:
Employee Assistance Program (EAP): Access to confidential support services and resources for you and your family.
Career Growth & Learning Support: Opportunities for professional development, continuous learning, and career progression.