Intermediate Software Developer, AI | Développeur Logiciel Intermédiaire, IA
Hootsuite
Version française disponible ci-bas.
We're looking for an Intermediate Software Developer, AI who can explore, design, build, test, deploy, monitor and maintain artificial intelligence (AI) systems that are highly integrated with our product and deliver value to our customers. This position will work on a small and agile team that continuously incorporates feedback to refine and improve the products and features you deliver. Your team will own the entire AI Product Lifecycle from early ideation research to beta releases to production ready, scalable product suitable for new and existing customers. This is a hybrid role and is open to applicants located within commuting distance of Montreal. In this role, you will report to the Manager, Software Development.
WHAT YOU’LL DO:
- Design and build our AI platform used by multiple features across products
- Implement using API-first, TDD and CICD, our core AI capabilities to allow new AI-powered features across teams and products (NLP, retrieval, recommendation, generation, etc.)
- Continuously improve our core AI capabilities leveraging state-of-the-art algorithms and methods
- Balance decisions for cost, quality, performance, personalization and responsibility
- Operate our AI platform to serve operational & customer functionality
- Diagnose and mitigate AI systems failure
- Setup the right metrics and bias evaluation to monitor AI systems quality
- Apply AI development best practices, including DevOps & MLOps mindset
- Translate business and operational needs into AI solution
- Collaborate with product managers, user experience researchers and other software developers to understand customer problems
- Brainstorm ideas in groups, make hypotheses, validate them methodically and present your findings to your peers for review.
- Work with the following technologies: Python, LLM (agents, tools, evaluation), AI frameworks/library (LangChain, PyTorch, sklearn, transformers, pandas, etc.), ElasticSearch, AWS, Docker, Kubernetes, RESTful API
WHAT YOU’LL NEED:
- A degree in Computer Science or Engineering with a specialization in artificial intelligence (i.e. machine learning, NLP, recommendation, generative, etc.), and at least 3 years of experience in developing and maintaining software, or an equivalent level of education or work experience, and a track record of substantial contributions to AI projects with high business impact
- You are proficient in Python using ML/DL frameworks and libraries and at least familiar with one of Node.js or Go
- Demonstrated experience working with a team on medium-to-large sized projects that had an impact on business, including an understanding of releasing and iterating on AI models used by customers.
- Any experience with LLM-based project will be well perceived
- You know how to apply best practices to ensure high-quality code and AI systems (i.e. automated tests; code reviews; metrics and bias evaluation).
- You have experience in AI systems design: analyze a problem & data from a customer perspective with an AI lens, design data flow and algorithms (ranking, classification, prediction, clustering), drive discussions, and propose technical solutions.
- Open Communication: clearly conveys thoughts, both written and verbally, listening attentively and asking questions for clarification and understanding
- Collaboration and Teamwork: works with others to deliver results, meaningfully contributing to the team and prioritizing group needs over individual needs
- Self Development: is personally committed to, and actively works to continuously improve
- Problem Solving: uses an organized and logical approach to find solutions to complex problems. Looks beyond the obvious to understand the root cause of problems
- Resilience, Tolerance for Change/Ambiguity: can effectively cope with change, finding ways to advance work and projects
- Creativity and Innovation: seeks new and better ways of doing things, generates original and imaginative ideas, products, or solutions
WHO YOU ARE:
- Tenacious. You are determined to succeed, and you are motivated by the success of customers, colleagues, and the community.
- Curious. You are always learning and seeking ways to make things better.
- Conscientious. You keep your promises, taking your commitments to others seriously, and you have strong integrity.
- Humble. You lead with humility and empathy, respecting and learning from the perspectives of others.
Accommodations will be provided as requested by candidates taking part in all aspects of the selection process.
Nous recherchons un Développeur Logiciels Intermédiaire spécialisé en Intelligence Artificielle, capable d'explorer, de concevoir, de construire, de tester, de déployer, de surveiller et de maintenir des systèmes d'intelligence artificielle (IA) hautement intégrés à notre produit et offrant de la valeur à nos clients. Vous travaillerez au sein d'une équipe agile qui travaille de manière itérative afin d’améliorer les produits et fonctionnalités. Votre équipe sera responsable de l'ensemble du cycle de vie du produit d'IA, de la recherche initiale à la mise en production, en passant par les versions bêta, pour un produit évolutif adapté aux nouveaux et anciens clients. Il s'agit d'un rôle hybride ouvert aux candidats situés à proximité de Montréal. Dans ce rôle, vous relèverez du gestionnaire, développement de logiciels.
CE QUE VOUS FEREZ :
- Concevoir et bâtir notre plateforme d'IA utilisée par plusieurs fonctionnalités à travers nos produits
- Implémenter en utilisant une approche API-first, TDD et CICD, nos capacités d'IA de base pour permettre de nouvelles fonctionnalités alimentées par l'IA à travers les équipes et les produits (TALN/NLP, récupération, recommandation, génération, etc.)
- Améliorer continuellement nos capacités d'IA de base en utilisant des algorithmes et des méthodes de pointe
- Équilibrer les décisions en termes de coût, de qualité, de performance, de personnalisation et de responsabilité
- Exploiter notre plateforme d'IA pour servir les fonctionnalités opérationnelles et client
- Diagnostiquer et atténuer les défaillances des systèmes d'IA
- Configurer les bonnes métriques et l'évaluation des biais pour surveiller la qualité des systèmes d'IA
- Appliquer les meilleures pratiques de développement d'IA, y compris l'état d'esprit DevOps & MLOps
- Traduire les besoins commerciaux et opérationnels en solutions d'IA
- Collaborer avec les chefs de produit, les chercheurs en expérience utilisateur et les autres développeurs logiciels pour comprendre les problèmes et besoins des clients
- Brainstormer en groupe, formuler des hypothèses, les valider méthodiquement et présenter vos résultats à vos pairs.
- Travailler avec les technologies suivantes : Python, LLM (agents, tools, evaluation), frameworks/bibliothèques d’IA (LangChain, PyTorch, sklearn, transformers, pandas, etc.), ElasticSearch, AWS, Docker, Kubernetes, RESTful API
CE DONT VOUS AUREZ BESOIN :
- Un diplôme en informatique ou en génie avec une spécialisation en intelligence artificielle (c'est-à-dire en apprentissage automatique, TALN/NLP, recommandation, génératif, etc.) et au moins 3 ans d'expérience dans le développement et la maintenance de logiciels, ou un niveau d'éducation ou d'expérience professionnelle équivalent, et un historique de contributions substantielles à des projets d'IA à fort impact commercial
- Vous maîtrisez Python en utilisant les frameworks et bibliothèques ML/DL et êtes au moins familier avec Go ou Node.js.
- Vous démontrez une expérience de travail avec une équipe sur des projets de taille moyenne à grande ayant un impact sur l'entreprise, y compris une compréhension du principe d’itération et d’amélioration continue des modèles d'IA utilisés par les clients.
- Toute expérience sur des projets basés sur LLM sera bien perçue.
- Vous savez comment appliquer les meilleures pratiques pour garantir un code et des systèmes d'IA de haute qualité (c'est-à-dire tests automatisés, révisions de code, métriques et évaluation des biais).
- Vous avez de l'expérience dans la conception de systèmes d'IA : analyser un problème et des données du point de vue du client avec une perspective d'IA, concevoir des flux de données et des algorithmes (classement, classification, prédiction, regroupement/clustering), animer des discussions et proposer des solutions techniques.
- Communication ouverte : exprime clairement ses pensées, à la fois écrites et verbales, en écoutant attentivement et en posant des questions pour clarifier et comprendre
- Collaboration et travail d'équipe : travaille avec les autres pour obtenir des résultats, contribue de manière significative à l'équipe et donne la priorité aux besoins du groupe par rapport à ses besoins individuels.
- Développement personnel : s'engage personnellement et travaille activement à son amélioration continue.
- Résolution de problèmes : utilise une approche organisée et logique pour trouver des solutions à des problèmes complexes. Va au-delà de l’évidence pour comprendre la cause profonde des problèmes.
- Résilience, tolérance au changement/ambiguïté : peut faire face efficacement au changement, trouver des moyens de faire avancer le travail et les projets.
- Créativité et innovation : recherche de nouvelles et meilleures façons de faire les choses, génère des idées, des produits ou des solutions originales et imaginatifs.
QUI VOUS ÊTES :
- Tenace. Vous êtes déterminé à réussir et vous êtes motivé par le succès des clients, des collègues et de la communauté.
- Curieux. Vous êtes toujours en train d'apprendre et de chercher des moyens d'améliorer les choses.
- Consciencieux. Vous tenez vos promesses, vous prenez au sérieux vos engagements envers les autres et vous faites preuve d'une grande intégrité.
- Humble. Vous dirigez avec humilité et empathie, en respectant les points de vue des autres et en apprenant d'eux.
Les candidats qui participent à tous les aspects du processus de sélection bénéficieront, à leur demande, de mesures d'adaptation.
In all we do, our six guiding principles light the way:
Step Up: Show the world what it looks like to live and work by these guiding principles. #StepUp
One Team: Make Hootsuite a place where everyone feels safe, welcome, valued, and empowered to do their best work without compromising who they are. #OneTeam #FreeToBeMe
Customer Obsessed: Focus relentlessly on helping our customers succeed. #CustomerObsessed
Go Fast, Be Agile: Widen our competitive advantage by committing to speed and simplicity over perfection and complexity. #GoFastBeAgile
Play to Win: Commit to building an incredible, profitable company for our customers, our employees, and our stakeholders. #PlayToWin #NoExcuses
Neighbours & Allies: Give back to our communities and be an ally. #SocialForGood #Allies
#LI-AK1