8-10 years of full stack engineering experience with a focus on production systems
Proficient in React and Next.js, emphasizing architectural design and performance
Strong backend experience in Node.js, including service design and operation
Advanced knowledge of PostgreSQL, including schema design and query optimization
Experience with authentication/RBAC systems in multi-tenant B2B applications
Hands-on with BullMQ or similar queue/job systems, with a practical approach to implementation
Responsibilities
Own product features from concept to customer delivery, including scoping and iteration
Engage directly with customers for discovery and feedback to inform product decisions
Make key architectural decisions for systems, documenting rationale for team use
Develop using a Node.js stack, including Next.js, Node services, and PostgreSQL
Design and manage robust authentication and authorization systems
Implement durable, automated processes with BullMQ and integrate with external systems
Set technical standards and mentor fellow engineers to raise overall quality
Benefits
Profitable and growing company
Fast-paced product iteration and direct collaboration with founders
Unfiltered feedback from customers
Highly competitive salary
Comprehensive health benefits
Full Job Description
Senior Full Stack Software Engineer
Location: Onsite in Toronto, ON
Your Role
As a Senior Full Stack Software Engineer at SalesJack, you'll be one of the senior technical hires on the team, owning major product surfaces end-to-end. That means more than writing code: you'll talk to customers, scope what to build, make the product calls, and ship it. We don't have a PM layer between engineering and customers; the engineers closest to the problem own the solution.
You'll partner directly with the founders and lead engineers to set architectural direction and raise the engineering bar, including how the team uses AI to move faster without lowering quality. This is a hands-on role: shipping production code daily with AI as a force multiplier, making the calls on what gets built and how it scales, and sweating the details of how it feels to use.
We highly value a startup mentality. Strong opinions held loosely, fast iteration, and a bias toward shipping over deliberating.
What You'll Do:
Own entire product features from "this is a problem worth solving" to "this is live in customers' hands": scoping, designing, building, shipping, iterating
Talk to customers directly: discovery calls, support tickets, ride-alongs with sales reps in lumberyards. Use what you learn to make better product decisions
Make the architectural calls on new systems (data model, API surface, frontend composition) and document the reasoning so both the team and our AI tooling can build on it
Build across our Node.js stack: Next.js on the frontend, Node services on the backend, BullMQ for background jobs and workflows, PostgreSQL as the system of record
Work AI-first: use coding agents (Claude Code, Cursor, Codex, or similar) to plan, implement, refactor, test, and review, and stay accountable for every line that ships
Design and ship LLM-powered product features: extracting structured data from messy sources, automating rep workflows, surfacing insights from ERP and sales data, with evals, guardrails, and cost/latency budgets that hold up in production
Design and operate authentication, authorization, and multi-tenant RBAC systems that hold up under real customer load, including in agent and LLM-driven flows
Build durable, queue-driven automation with BullMQ: orchestrating long-running processes, retries, LLM calls, and integrations against external ERPs and third-party APIs
Set technical standards (testing, code review, CI/CD, observability, and AI-assisted development practices) and raise the bar for everyone around you
Build reusable AI context for the team: project conventions, agent instructions, skills, and MCP integrations that make every engineer and agent more effective
Mentor engineers and lead design reviews
What We're Looking For:
Engineering
8-10 years of full stack engineering experience, including time spent owning systems in production at meaningful scale
Deep expertise in React and Next.js, with a strong point of view on component architecture, state management, and performance
Strong backend chops in Node.js - you've designed and operated services, not just built features inside them
Production experience with auth/RBAC systems, especially in multi-tenant B2B contexts
Hands-on experience with BullMQ or comparable queue/job systems (Sidekiq, RabbitMQ, SQS, Temporal) - and a clear sense of when to reach for them vs. simpler patterns
AI-Native Dev
Hands-on experience building and running AI agents that do verifiably correct work. You design the guardrails that make agent output trustworthy: test suites and type checks the agent must pass, eval harnesses, golden datasets, self-verification loops, and human-review checkpoints where they matter. You can explain how you know an agent's work is right, not just that it looks right
You use AI coding agents as a core part of your daily workflow, not occasionally. You can walk us through how you delegate work to agents, what you hand off vs. keep, and how you verify the output
Sharp judgment as the final reviewer. You catch subtle bugs, security issues, and bad architectural suggestions that slip past automated checks, and you know when an agent is confidently wrong
You've shipped LLM-powered features to production: prompt design, structured outputs, tool use, and handling failure modes like hallucination, malformed responses, rate limits, and cost overruns
You think about evals. You can define what "good" looks like for an AI feature and measure it rather than eyeballing it
Familiarity with the current AI tooling landscape (agent frameworks, MCP, model APIs from Anthropic/OpenAI/others) and strong opinions about what's useful vs. hype
Bonus: you've built internal tools, agent workflows, or context systems that made a whole team more productive with AI
Product
A real product brain. You can be handed a fuzzy customer problem and come back with a scoped, shippable plan - not a Jira ticket asking for specs
Strong product taste. You push back on bad designs, come up with better ones, and have opinions about what "good" looks like in B2B software
Customer instinct. You actually want to talk to users, watch them work, and let what you learn shape the product. You don't need to be shielded from messy customer feedback
Ability to make tradeoff calls - what to cut, what to defer, what to over-invest in - without needing a PM to break the tie
Why Join Us:
Profitable and growing
Fast iteration, direct collaboration with founders, and unfiltered customer feedback
Highly competitive salary and comprehensive health benefits
Hiring Process
Initial call with our founding engineer to discuss your background and introduce SalesJack (~30 mins)
Technical Exercise: Product Design, Live coding and problem-solving session (~2.5 hours, might be 2 separate sessions) - this might be in person in our Toronto office
Product and culture call with one of our founders (~30 mins)