TMC Canada recrute : Senior DevOps & Python Platform Specialist
-Lieu : Montréal, Québec, Canada
-Expérience : 7 ans - 15 ans
-Mode hybride : 3j/sur site , 2j/télétravail
-Maîtrise de l'Anglais est obligatoire
Le candidat conçoit, construit et exploite des plateformes de gestion de contenu d'entreprise hautement disponibles, prenant en charge les cas d'utilisation de gestion de contenu d'entreprise applicative (AECM) et de gestion de contenu pour les utilisateurs finaux (EUCM).
L'équipe possède et conçoit des plateformes comprenant Alfresco, SharePoint Embedded, Box, Google Workspace, ainsi que plusieurs services de support. Ce rôle combine de l'ingénierie pratique en Python, de l'intégration de plateformes, des pratiques DevOps et du support de production.
Développement et Ingénierie Logiciels
- Concevoir, développer et maintenir des solutions de gestion de contenu évolutives, des intégrations et des automatisations à l'aide de Python et Java.
- Diriger et contribuer aux discussions de conception technique ; produire une documentation de conception et d'architecture de haute qualité.
- Créer et améliorer des outils, des bibliothèques et des automatisations pour soutenir l'intégration, les opérations et la fiabilité de la plateforme.
- Effectuer des revues de code et aider à établir et renforcer les meilleures pratiques d'ingénierie.
- Encadrer et fournir des conseils techniques aux autres ingénieurs de l'équipe.
Gestion de la Plateforme et de l'Infrastructure
- Déployer, configurer et exploiter les plateformes ECM Alfresco dans des environnements de cloud privé sur site (on-premises), en fournissant un support de production de niveau 3.
- Évaluer et analyser SharePoint Embedded en tant que solution de gestion de contenu applicatif, en collaborant avec les clients internes sur des preuves de concept (PoC) le cas échéant.
- Collaborer avec les équipes d'ingénierie et de support des fournisseurs lors des escalades, des correctifs et des mises à niveau de produits.
- Maintenir à jour des diagrammes d'architecture précis, des normes de configuration, des notes de version (release notes) et des guides opérationnels (runbooks) pour les équipes de support de niveau 2.
- Dépanner des problèmes complexes sur l'ensemble de la pile applicative, y compris les serveurs web, les serveurs d'applications, les bases de données et les couches d'authentification.
Opérations, Support et Engagement Client
- Participer à une rotation d'astreinte d'ingénierie (environ 1 semaine toutes les 4 à 5 semaines) pour soutenir les plateformes de production.
- Agir en tant que point d'escalade pour les problèmes clients complexes, en travaillant en étroite collaboration avec le support de niveau 2, l'infrastructure et les équipes de sécurité pour diagnostiquer et résoudre les incidents.
- Communiquer clairement avec les clients concernant l'état d'avancement des problèmes, l'analyse des causes profondes (RCA) et les plans de résolution.
- Analyser les tendances des incidents et les retours des clients afin de stimuler les améliorations de la plateforme, la correction des défauts et les mesures préventives.
- Examiner continuellement les flux de travail et les processus opérationnels existants, en recommandant et en mettant en œuvre des améliorations de la fiabilité, de l'évolutivité et de la sécurité.
Compétences minimales requises pour ce rôle
- Plus de 6 ans d'expérience dans des rôles d'ingénierie logicielle, de développement d'applications ou DevOps.
- Plus de 3 ans d'expérience pratique en développement avec Python, avec une connaissance pratique de Java.
- Plus de 3 ans d'expérience dans le support de systèmes Linux et/ou Windows, y compris le dépannage, le scripting de shell et l'automatisation.
- Forte maîtrise des bases de données relationnelles, de préférence Microsoft SQL Server, et de la rédaction de requêtes SQL.
- Solide compréhension des fondamentaux des réseaux et expérience de travail avec les technologies de répartition de charge (load balancing).
- Capacité éprouvée à dépanner et à résoudre des problèmes dans des systèmes complexes et distribués.
Atouts considérés
- Expérience dans l'exploitation d'applications d'entreprise utilisant les serveurs web Tomcat et Apache.
- Familiarité avec les concepts modernes de sécurité des applications et les mécanismes d'authentification (ex. Kerberos, Mutual TLS, OAuth/OIDC, SAML).
- Expérience avec des outils de gestion de builds et de dépendances tels que Maven ou Gradle.
- Exposition aux technologies de conteneurisation et d'orchestration (ex. Podman, Kubernetes).
- Expérience dans la création ou le support de pipelines CI/CD, y compris des outils tels que Jenkins.
- Confort à travailler dans un environnement Agile/Scrum en utilisant des outils comme Jira.
- Expérience avec Ansible ou des outils d'automatisation et de gestion de configuration similaires.
- Connaissance des technologies de file d'attente de messages (message queue) ou orientées événements.
- Familiarité avec l'environnement GitHub/Copilot, maîtrise de la gestion de versions basée sur Git et des meilleures pratiques DevOps.
English version below
We're Hiring : Senior DevOps & Python Platform Specialist (English required)
-Location : Montreal, Quebec, Canada
-Experience : 7 ans à 15 ans
-Hybrid : 3days/on site, 2days/remote
The Candidate designs, builds, and operates highly available enterprise content management platforms supporting both Application Enterprise Content Management (AECM) and End User Content Management(EUCM) use cases. The team owns and engineers platforms including Alfresco, SharePoint Embedded, Box, Google Workspace, and several supporting services.
This role blends hands on Python engineering, platform integration, DevOps practices, and production support. The successful candidate brings a strong sense of ownership, excels at solving complex distributed system problems, and communicates effectively with both technical and non-technical stakeholders.
You will play a key role in shaping platform reliability, scalability, and customer experience while contributing to ongoing modernization initiatives.
-Software Development & Engineering
- Design, develop, and maintain scalable content management solutions, integrations, and automation using Pythonand Java
- Lead and contribute to technical design discussions; produce high quality design and architecture documentation.
- Build and enhance tooling, libraries, and automation to support platform integration, operations, and reliability.
- Perform code reviews and help establish and reinforce engineering best practices.
- Mentor and provide technical guidance to other engineers on the team. Platform & Infrastructure Ownership.
- Deploy, configure, and operate Alfresco ECM platforms in on premises private cloud environments, providing Level 3 production support.
- Evaluate and assess SharePoint Embedded as an application content management solution, partnering with internal customers on proofs of concept where applicable.
- Collaborate with vendor engineering and support teams on escalations, patches, and product upgrades.
- Maintain accurate and up to date architecture diagrams, configuration standards, release notes, and operational runbooks for Level 2 support teams.
- Troubleshoot complex issues across the full application stack, including web servers, application servers, databases, and authentication layers.
-Operations, Support & Customer Engagement
- Participate in an engineering on call rotation (approximately 1 week every 4/5 weeks) to support production platforms.
- Act as an escalation point for complex customer issues, working closely with Level 2 support, infrastructure, and security teams to diagnose and resolve incidents.
- Communicate clearly with customers regarding issue status, root cause analysis and resolution plans.
- Analyze trends in incidents and customer feedback to drive platform improvements, defect remediation, and preventive measures.
- Continuously review existing workflows and operational processes, recommending and implementing improvements to reliability, scalability, and security.
The minimum required skills necessary for this role
-6+ years of experience in software engineering, application development, or DevOps roles
- 3+ years of hands-on development experience with Python, with working knowledge of Java
-3+ years of experience supporting Linux and/or Windows systems, including troubleshooting, shell scripting, and automation
- Strong proficiency with relational databases, preferably Microsoft SQL Server, and writing SQL queries.
- Solid understanding of networking fundamentals and experience working with load balancing technologies.
- Proven ability to troubleshoot and resolve issues in complex, distributed systems.
Is considered as an asset
- Experience operating enterprise applications using Tomcat and Apache web servers.
- Familiarity with modern application security concepts and authentication mechanisms (e.g., Kerberos, Mutual TLS, OAuth/OIDC, SAML).
- Experience with build and dependency management tools such as Maven or Gradle
- Exposure to containerization and orchestration technologies (e.g., Podman, Kubernetes)
- Experience building or supporting CI/CD pipelines, including tools such as Jenkins
- Comfort working in an Agile/Scrum environment using tools such as Jira.
- Experience with Ansible or similar automation and configuration management tools.
- Knowledge of message queue or event driven technologies.
- Familiar with Github/Copilot environment, proficient with Git-based version control and DevOps best practices.
- Exposure to containerization technologies (e.g., Podman, Kubernetes).