Don’t send a generic resume — generate a resume and cover letter tailored to this exact role.
St. Joseph Communications in Toronto is seeking a Senior Full-Stack Developer to maintain and enhance digital platforms for product, content and monetization across SJC.
You will define technical priorities, contribute to architecture, and collaborate with product managers, designers, and editors to deliver high-impact solutions that grow revenue. The role requires 5+ years of software engineering experience, strong TypeScript/React/Node.js skills, and a willingness to ramp up on our AdOps stack
Salary Range: $100,000.00 To $120,000.00 Annually
SJC stands as Canada’s largest privately owned communications company, distinguished by its portfolio of leading media brands, including Toronto Life, Chatelaine, and Maclean’s. At SJC, creativity, technology and journalism intersect to deliver content that resonates and performs. From integrated creative studios and advanced ad-tech to a portfolio of iconic media brands, we craft and distribute award-winning stories for audiences and advertisers alike. Partnering with organizations across North America, we build marketing solutions that inform, inspire and empower on every platform—from print to emerging digital channels. Our influence—and a 22-year streak on Canada’s Best Managed Companies list—reflects a culture committed to excellence and constant evolution. To learn more about our organization, please visit www.stjoseph.com
Our engineering team is seeking a Senior Full-Stack Developer to play a key role in the engineering function for our Media organization. In this role you will be responsible for maintaining and enhancing our digital platforms that enable product, content and monetization to succeed for all stakeholders across SJC. As a senior member of the team, you will help to define technical priorities, contribute to architectural decisions, and collaborate closely with the product managers, designers, and editors to deliver high-impact solutions that maximize value for our users and revenue for our business. This role requires a proven track record of contributing to complex projects, architectural design, and quality code production, along with an appetite to learn—you'll be ramping up on our AdOps stack (Header Bidding, Google Ad Manager, and the data pipelines behind ad revenue) as part of the role, so we're looking for someone adaptable and eager to grow into that domain.
Collaborate with other engineers as well as PMs and designers, contributing to a culture grounded in trust, teamwork, clear expectations, accountability, and continuous improvement.
Architect and develop new platform and product features using modern frameworks (TypeScript, React, Node.js) and AI technologies, taking ownership from prototype through production and potentially mentoring junior developers in the process.
Ramp up on and eventually contribute to the technical implementation of our ad stack, including Header Bidding and Google Ad Manager, working closely with our AdOps engineer.
Maintain build and deployment infrastructure. e.g. Docker, GitHub Actions, AWS CodeBuild, Terraform, and AWS Cloud formation.
Lead database development and administration using MySQL/MariaDB on AWS RDS Aurora.
Other duties as assigned.
Experienced engineer: 5+ years in software engineering with a track record of contributing to high-performing teams.
Adaptable and curious: comfortable picking up new domains (like AdOps/programmatic advertising) on the job, with no prior ad tech experience required.
Cross-functional partner: Proven collaborator with PMs, designers, and peers to take products from 0→1, managing expectations and delivering impact while fostering transparency and operational excellence.
Owning shared product services: authentication, content APIs, adtech, user engagement, personalization.
Shipping mobile web experiences (Next.js, React, Node, TypeScript—plus the leading edge framework that emerges tomorrow) accelerated with the use of AI coding agents.
Crushing performance & Core Web Vitals so ad viewability and subscription conversions soar.
Championing engineering culture: code quality, observability, threat modeling, blameless retrospectives.
Education: A bachelor’s degree in Software Engineering, Computer Science, or equivalent.
Back-end & runtimes: Skilled in REST APIs (Golang, Python), containerization (Docker, AWS ECR/ECS/Fargate), microservices architecture, and serverless (AWS Lambda, Step Functions).
AdOps: Proficient with programmatic advertising, GAM, advertising analytics, and A/B testing.
AI-assisted coding: using AI tools to accelerate coding productivity while maintaining strict quality oversight over AI-produced code.
Data stores: Strong with relational databases (MySQL/MariaDB, PostgreSQL); familiarity with NoSQL and column-store databases (e.g., ClickHouse) is a plus. Data engineering experience is a plus.
Delivery & edge: Hands-on CI/CD (GitHub Actions, AWS CodeBuild) and CDN/edge computing (Cloudflare).
AdOps: No prior experience required, but genuine interest in learning programmatic advertising, GAM, and ad analytics is expected.
PHP and WordPress experience are a plus.
SJC is committed to the well-being and professional development of its employees. Our comprehensive benefits package includes:
SJC is proud to be an equal-opportunity employer, where everyone feels welcome and has the opportunity to thrive. We're committed to creating inclusive and barrier-free recruitment processes and work environments. If you're contacted for an interview and require any accommodations to ensure a fair and equitable experience, please let our Human Resources team know. We'll handle any information you share with complete confidentiality.
Equality and respect for all is one of our founding values and core beliefs at SJC. We are a diverse group with associates of all ages, orientations, races and talents. We celebrate this diversity and we draw strength from it. Inclusivity at SJC means fostering a culture that welcomes and respects each individual as equal – both inside our walls and within the larger community.