Intermediate Software Engineer
- Toronto, Vancouver, Kitchener-Waterloo, Edmonton, Canada
- Mid
- Remote
- Posted 21 Apr 2026
Are you a software developer with a passion for finding creative solutions to real-world problems?
Then Jobber might be the place for you! We're looking for an Intermediate Software Engineer to be part of our Software Engineering team.
At Jobber, we don’t just build a product - we work on real problems that help people in small businesses to become successful. We are inspired by our company values: be humble, be supportive and give a sh*t, which are not just said but are lived. We work in a collaborative environment where teams make decisions with autonomy and contribute directly to shaping the company’s future. We release early and often while dedicating time to addressing technical debt. We believe in getting instant feedback from our customers and leveraging that to make their lives easier.
We help employees grow professionally; we have a ton of onboarding resources, tutorials, hackathons, and buddies to support learnings and provide opportunities to innovate. We have a range of experience levels on teams which allow for mentor/mentee opportunities. Leaders at Jobber work with empathy and support employees to build a healthy work-life harmony. Bring your dedication and passion to this job to fulfill your goals.
You could join one of the following teams:
Sign-up & Trial: The Sign-up & Trial team owns the sign-up and trial experiences across web and mobile, helping new service providers get started and discover Jobber’s value. Through personalized onboarding, guided workflows, and experimentation, the team helps users understand how Jobber fits their business and feel confident using it. Their goal is to reduce time to value, increase trial engagement, and turn more trial users into paying customers.
The Sign-up & Trial team is a close-knit, collaborative team that moves quickly and works efficiently, with plenty of room to experiment and bring new ideas to life.
Harbour Foundations: The Harbour Foundations team is building the internal foundation for an AI-powered customer journey at Jobber. This team’s mission is to create scalable, intelligent systems that give GTM teams clear, actionable visibility into every AI-driven interaction — enabling more personalized, efficient, and proactive support across the entire customer lifecycle.
As our AI footprint grows across Sales, Success, Support, and Onboarding, Harbour serves as the connective tissue that unifies these interactions, eliminates context gaps, and brings clarity to complex customer journeys. By centralizing fragmented tools and surfacing real-time insight into conversations, sentiment, and customer intent, the Harbour team is redefining how we observe, influence, and improve our AI-human hybrid workflows.
Mobile Experience: The Mobile Experiences team makes Jobber’s iOS and Android apps feel coherent and consistent for the service providers who rely on them every day. As part of the Frontend Foundations group, we embed with feature teams on a rotating basis to improve key customer journeys and leave behind patterns that other teams can build on. Mobile is where most new customers first try Jobber, so this work directly shapes how many service providers convert and stay with us. Joining this team is an opportunity to shape the quality of Jobber’s mobile experience across the entire product!
The role:
Reporting to the Manager, Software Engineering, the Intermediate Software Engineer will collaborate with other Software Development members on a Scrum team to build an industry-leading product that helps our customers and their small businesses be successful. We’re looking for people who are ready to solve problems that millions of entrepreneurs are facing and who are eager to develop their craft while contributing to the team’s success.
In this role, you must be committed to writing well-tested, scalable, and well-organized code. In addition, you will customize, extend and experiment with tools, models, harnesses and processes to increase your effectiveness. You’ll have opportunities to learn, collaborate, and grow while supporting your team in delivering high-quality solutions.
As an Intermediate Software Engineer, you will:
- Contribute to the design, development, and delivery of features that address customer needs, collaborating with cross-functional teams
- Work closely with senior engineers to refine requirements and scope technical solutions.
- Write, review, and maintain clean, scalable, and well-documented code.
- Participate in code reviews to ensure code quality and maintainability.
- Collaborate with your team to identify and solve technical challenges.
- Share knowledge and learn from others through paired programming, team discussions, and technical documentation.
- Stay curious and keep up to date with the latest tools, technologies, and best practices in software development.
- Build with AI as a core part of how you work. We expect engineers to delegate real work to agents daily, verify what comes back, and keep improving their own setup so each task makes the next one easier.
To be successful, you should have:
- Proficiency in writing clean, maintainable, and testable code.
- Familiarity with Agile/Scrum development methodologies.
- A structured understanding of common backend frameworks, technologies, and patterns.
- Familiarity working with observability tools such as DataDog.
- Strong problem-solving skills and a collaborative mindset.
- A willingness to learn, adapt, and grow as part of a team.
- Daily hands-on experience building with agentic AI tools, beyond autocomplete or chat: you delegate real work to agents as part of how you ship.
It would be great (but not a deal-breaker) if you had:
- Experience with our development stack: React, React Native, TypeScript, Ruby on Rails
- Familiarity with GraphQL API Layer and its optimization.
- Prior experience working on scalable distributed systems.
- Exposure to background processing frameworks (e.g., Sidekiq, Active Jobs).
Hiring Process:
- An interview with a Talent team member (45 mins)
- A Hiring Manager Interview (60 mins),
- A take-home challenge with a follow-up Functional Interview (90 mins),
- A Senior Leadership Interview (30 mins).
Location:
We believe great collaboration is intentional, and sometimes that means coming together in person to build, brainstorm, and connect. To support this, the role is open to candidates based in one of our hub cities: Edmonton, Toronto, Vancouver, or Kitchener-Waterloo.
Compensation:
At Jobber, we believe that compensation should be transparent, fair, and supportive of your experience and growth. This role has a minimum annual salary of $106,600, a midpoint of $125,400, and a maximum salary of $144,200, designed to reflect the progression from learning the ropes to truly excelling.
We design our compensation to reflect each new hire's skills, experience, and the complexity of the role, ensuring a fair and competitive salary. Our range is intentionally broad to support growth and long-term impact, with fully established hires typically starting around the midpoint. The higher end of the range is reserved for those who have demonstrated deep expertise and lasting contributions, while offers below the midpoint reflect strong potential with room to develop. This approach ensures that compensation aligns with both an individual's current capabilities and their opportunity for future growth.
…
You apply directly on jobber's careers site. See similar jobs