Senior Fullstack Developer

Stay22
Stay22

Software Engineering

Montreal, QC, Canada

Posted on Sep 16, 2026
-Version française à suivre-
About Stay22

Based in Montreal, Stay22 helps ambitious creators and intent-rich digital platforms turn their existing traffic into incremental revenue, with technology that works quietly in the background.

Today, more than 6,500 creators and platforms rely on Stay22, with over $1 billion in annual transactions flowing through the platform. Originally built for travel, the company now supports partners across retail, lifestyle, publishing, events, and transport as it expands its monetization infrastructure for the modern creator economy.

About the role

As a Senior Fullstack Developer on the Phantom team, you will play a key role in advancing our embedded widget and affiliate platform. Your mission will be to streamline browser execution and ensure high performance of our scripts across diverse websites.
You will design mechanisms for privacy-conscious session tracking and fingerprinting, and take ownership of the full script lifecycle – from load optimization to event handling and error recovery. Working closely with product and engineering leads, you will help shape and maintain the core infrastructure that powers Stay22's embeddable products, ensuring they run reliably under real-world constraints.

Key Responsibilities
  • Continuously improve the load time and execution efficiency of our browser scripts (minification, caching, lazy loading, etc.)
  • Create robust methods for injecting content and widgets into arbitrary websites (e.g. automating DOM manipulation, handling dynamic page layouts)
  • Architect and execute A/B/n experimental setups alongside analytics teammates, leveraging data metrics to guide key product shifts
  • Solid grasp of Express.js middleware and user session administration, applying core security principles to server-side code
  • Build and maintain Node.js/Python-based scrapers to collect data from partner websites or APIs when needed; design fallback data sources for resiliency
  • Troubleshoot and adapt our runtime logic for real-world usage, including handling unexpected page structures or third-party script conflicts
  • Own the entire embedded product stack (scripts, SDKs, APIs) and collaborate with other teams to integrate updates and new features smoothly

Requirements
  • Deep hands-on experience with vanilla and ES6+ JavaScript or TypeScript without relying on frameworks (no React/Vue/etc. for core logic)
  • Strong knowledge of the browser event loop, DOM API, CSSOM, rendering pipeline, and how to optimize for First Contentful Paint (FCP), Largest Contentful Paint (LCP), etc.
  • Proficiency with Node.js for building APIs and web scrapers; experience with Python-based scraping is a plus. Familiarity with HTTP, REST/JSON, and proxies
  • Understanding of browser fingerprinting methods and privacy considerations (e.g. cookie/session management, CORS, GDPR). This is a big asset
  • Public contributions on GitHub or other open-source involvement (project contributions, libraries) are strongly preferred
  • Bachelor's or Master's in Computer Science (or equivalent) is a plus, or equivalent professional experience in software development

What to Expect from our Hiring Process

We know your time’s valuable, so here’s the quick rundown of what to expect.
  1. Screening call with our Talent Acquisition Advisor - virtual (20-30 minutes)
  2. Whiteboarding session oriented on System Design (Miro) with the Engineering Team - virtual (60 minutes)
  3. Hiring Manager Interview - virtual (45min)
  4. Panel Interview with stakeholders and peers - in person (45min)
  5. Final interview with our CEO - virtual (30 minutes)
  6. Offer & Onboarding 🎉
Please note that this process is subject to change at any point, based on additional requirements from the team.

Why join Stay22?
  • Prime Montreal Location: Work from our vibrant Little Italy HQ with a cafeteria allowance, full gym access, and a rooftop terrace complete with a seasonal basketball/pickleball court & hockey rink.
  • Comprehensive Benefits: Health & dental coverage, RRSP matching, fully paid STM pass’, and regular team socials, events, and retreats.
  • Flexibility That Works: Flexible schedules, work-from-anywhere opportunities, year-end shutdown, and flex days.

(Stay22 is an equal-opportunity employer. All qualified applicants are given consideration. If you have a disability or particular need that requires accommodation, please contact us at careers@stay22.com)

Your application will be reviewed by Nayo, our internal recruiter- even if you don’t meet every requirement but you’re excited, let’s talk.

__________________________________

À propos de Stay22

Basée à Montréal, Stay22 aide les créateurs ambitieux et les plateformes numériques à forte intention à transformer leur trafic existant en revenus additionnels, grâce à une technologie qui fonctionne discrètement en arrière-plan.

Aujourd’hui, plus de 6 500 créateurs et plateformes font confiance à Stay22, avec plus d’un milliard de dollars en transactions annuelles transitant par la plateforme. Initialement conçue pour le secteur du voyage, l’entreprise accompagne désormais des partenaires dans les domaines du commerce de détail, du lifestyle, de l’édition, des événements et du transport, alors qu’elle poursuit l’expansion de son infrastructure de monétisation pour l’économie moderne des créateurs.

À propos du poste

En tant que Développeur·se Fullstack Senior au sein du groupe Phantom, ton rôle sera déterminant pour faire progresser nos solutions d'affiliation et nos widgets embarqués. Ton objectif consistera à fluidifier l'exécution côté navigateur tout en garantissant une performance optimale de nos scripts sur une multitude de plateformes externes.

Tu élaboreras des dispositifs de suivi de session et de fingerprinting respectueux des exigences de confidentialité, tout en pilotant le cycle de vie complet du code client — de l'optimisation des temps de charge à la gestion des événements et à la résilience face aux erreurs. En synergie avec les responsables produit et ingénierie, tu participeras au façonnement et au maintien des fondations techniques qui alimentent les solutions Stay22, pour un fonctionnement irréprochable sur le terrain.


Responsabilités principales
  • Optimiser sans relâche la rapidité d'affichage et la légèreté d'exécution de nos scripts navigateur (minification, stratégie de cache, lazy loading)
  • Concevoir des mécanismes fiables pour l'insertion de modules et d'éléments visuels sur n'importe quel site tiers (manipulation automatisée du DOM, gestion des structures dynamiques)
  • Mettre en place et déployer des expérimentations A/B/n avec les spécialistes en analyse de données, en t'appuyant sur les indicateurs de performance pour guider les choix produit
  • Maîtriser les rouages des middlewares Express.js et du traitement des sessions utilisateur, tout en appliquant les normes de sécurité indispensables au code serveur
  • Développer et entretenir des outils de collecte en Node.js/Python pour extraire les informations des partenaires ou API au besoin, en prévoyant des flux secondaires de secours
  • Résoudre et ajuster notre logique applicative face aux anomalies du monde réel, notamment les dispositions de page inhabituelles ou les interférences avec d'autres scripts
  • Assurer la responsabilité complète du périmètre applicatif embarqué (scripts, SDKs, API) et coopérer avec les autres pôles pour intégrer harmonieusement évolutions et nouveautés

Exigences
  • Expérience concrète et approfondie en JavaScript vanilla et ES6+ ou en TypeScript, sans dépendance aux frameworks pour la logique principale (pas de React/Vue/etc. pour le cœur du système)
  • Solide connaissance de l'event loop du navigateur, du DOM API, du CSSOM, du pipeline de rendu, et des façons d'optimiser le First Contentful Paint (FCP), le Largest Contentful Paint (LCP), etc.
  • Maîtrise de Node.js pour la création d'API et de scrapers web; une expérience en scraping avec Python est un atout. Connaissance de HTTP, REST/JSON et des proxies
  • Compréhension des méthodes de fingerprinting du navigateur et des considérations liées à la vie privée (gestion des cookies/sessions, CORS, RGPD). C'est un atout important
  • Des contributions publiques sur GitHub ou une implication dans des projets open source (contributions, librairies) sont fortement souhaitées
  • Un baccalauréat ou une maîtrise en informatique (ou équivalent) est un atout, ou une expérience professionnelle équivalente en développement logiciel

Processus de recrutement
  • Premier échange avec notre conseiller en acquisition de talents – en virtuel (20 à 30 minutes)
  • Séance de tableau blanc sur la conception de systèmes (Miro) avec l’équipe d’ingénierie – en virtuel (60 minutes)
  • Entrevue avec la gestionnaire d’embauche – en virtuel (45 minutes)
  • Entrevue de groupe avec des membres de l’équipe et des partenaires clés – en personne (45 minutes)
  • Dernière rencontre avec notre PDG – en virtuel (30 minutes)
  • Offre d’emploi et intégration 🎉
Le processus peut évoluer selon les besoins de l’équipe.

Pourquoi rejoindre Stay22 ?
  • Emplacement de choix à Montréal : Travaille depuis notre dynamique siège social situé dans la Petite-Italie, avec une allocation pour la cafétéria, un accès complet au gym, ainsi qu'une terrasse sur le toit comprenant un terrain saisonnier de basketball/pickleball et une patinoire de hockey.
  • Une gamme complète d’avantages sociaux : Couverture santé et dentaire, contribution de l’employeur au REER, titre de transport STM entièrement payé, ainsi que des activités d’équipe, événements et retraites réguliers.
  • Une flexibilité adaptée à ta réalité : Horaires flexibles, possibilités de travailler de n’importe où, fermeture des bureaux en fin d’année et journées flexibles.

(Stay22 est un employeur garantissant l'égalité des chances. Toutes les candidatures qualifiées seront examinées. Si tu as un handicap ou des besoins particuliers nécessitant des aménagements, contacte-nous à careers@stay22.com.)

Ton CV sera lu par Nayo, notre recruteur interne, même si tu ne coches pas toutes les cases, on aimerait quand même te rencontrer.