Job Description
Position Overview
The Autodesk Assemble team is seeking a
Senior Software Developer
to help own and operate a mature, customer‑critical cloud service that performs
model conditioning for the construction industry . Assemble enables construction teams to work with large, complex building models by preparing, processing, and optimizing model data so it can be reliably used throughout downstream construction workflows.
This role focuses on ensuring
high availability, resiliency, security, and long‑term sustainability
of a production system that customers depend on every day. While new feature development is limited, the work is highly impactful and centered on strengthening and evolving the platform through modernization, automation, scalability improvements, and operational excellence.
Engineers on this team are responsible for the full lifecycle of the product — from writing and evolving code to deploying, monitoring, and supporting it in production. Success in this role depends not only on technical strength, but also on the ability to collaborate, communicate openly, and contribute positively to a team that values trust, mutual support, and respect for different perspectives and skill sets.
This is a remote position to be based in Canada only.
Responsibilities
Take end‑to‑end ownership of a production cloud service, including design, implementation, deployment, monitoring, and ongoing operation.
Instrument, monitor, and analyze system behavior to proactively identify risks, performance issues, and opportunities to improve resiliency and availability.
Improve and maintain build, test, and delivery systems to increase deployment safety, repeatability, and developer productivity.
Modernize existing code and dependencies to keep the platform current with supported libraries, frameworks, and best practices.
Maintain and continuously improve the security posture of the system, including addressing vulnerabilities, improving controls, and supporting compliance requirements.
Adapt the platform to handle increasingly large and complex customer data sets, including larger models and evolving data formats.
Drive automation and self‑service capabilities to reduce manual intervention and help the system “run itself” as much as possible.
Work closely with teammates to share knowledge, review designs and code constructively, and support one another during incidents and on‑call rotations.
Collaborate with product managers, architects, security partners, and support teams to ensure customer needs are met while maintaining a stable and predictable system.
Participate in an on‑call rotation and contribute to incident response, root‑cause analysis, and long‑term reliability improvements.
Apply modern tooling and automation, including AI‑assisted approaches where appropriate, to improve reliability, operational efficiency, and delivery quality.
Document technical designs, operational practices, and system behaviors clearly to support shared ownership and long‑term maintainability.
Minimum Qualifications
Bachelor of Science in Computer Science or equivalent practical experience.
4+ years of professional software development experience building and maintaining production systems.
Strong professional experience developing backend systems using C# and .NET in production environments .
Solid understanding of web application architecture, including data, application, and web tiers, and how those components behave in production.
Strong experience designing, deploying, and operating production systems in AWS, including defining and managing cloud infrastructure using Infrastructure as Code (Terraform), and troubleshooting live environments .
Hands‑on experience with CI/CD concepts and tooling, including source control, build automation, testing, and deployment pipelines.
Experience writing, maintaining, and operating software with a strong focus on reliability, observability, and performance.
Familiarity with monitoring, logging, alerting, and incident response practices.
Strong experience working with relational databases; SQL Server experience is strongly preferred , including schema design, query performance, and operational considerations.
Knowledge of security best practices for modern cloud‑based applications, including vulnerability management and secure coding practices.
Demonstrated ability to use
AI‑assisted tools and techniques
as a productivity multiplier for software development, debugging, testing, and operational problem‑solving.
Strong collaboration and communication skills, with the ability to work respectfully and effectively with teammates who have diverse backgrounds, experiences, and areas of expertise.
Strong problem‑solving skills, a sense of ownership, and the ability to work independently while balancing multiple priorities.
Preferred Qualifications
Experience building and maintaining large JavaScript applications; familiarity with React and modern state management approaches is a plus.
Experience modernizing mature systems (dependency upgrades, architectural refactoring, technical debt reduction).
Experience with infrastructure automation beyond Terraform (e.g., configuration management or deployment tooling).
Experience improving scalability to support large data sets or high‑throughput workloads.
Experience applying AI or automation to improve testing, operational efficiency, or developer productivity.
Experience working in customer‑facing or production‑support roles where reliability and responsiveness are critical.
Knowledge of or experience with construction, design, or engineering software is a plus.
Description du poste
L'équipe Autodesk Assemble recherche un développeur logiciel senior pour contribuer à la gestion et à l'exploitation d'un service cloud mature et essentiel pour les clients, qui assure le conditionnement des modèles pour le secteur de la construction. Assemble permet aux équipes de construction de travailler avec des modèles de bâtiments complexes et volumineux en préparant, traitant et optimisant les données des modèles afin qu'elles puissent être utilisées de manière fiable tout au long des workflows de construction en aval.
Ce poste consiste principalement à garantir la haute disponibilité, la résilience, la sécurité et la durabilité à long terme d'un système de production dont dépendent quotidiennement les clients. Bien que le développement de nouvelles fonctionnalités soit limité, le travail a un impact considérable et vise principalement à renforcer et à faire évoluer la plateforme grâce à la modernisation, l'automatisation, l'amélioration de l'évolutivité et l'excellence opérationnelle.
Les ingénieurs de cette équipe ont la responsabilité du cycle de vie complet du produit, de l'écriture et de l'évolution du code à son déploiement, sa surveillance et son support en production. La réussite dans ce poste dépend non seulement des compétences techniques, mais aussi de la capacité à collaborer, à communiquer ouvertement et à contribuer de manière positive à une équipe qui valorise la confiance, le soutien mutuel et le respect des différentes perspectives et compétences.
Il s'agit d'un poste à distance basé uniquement au Canada.
Responsabilités
Assumer la responsabilité de bout en bout d'un service cloud de production, y compris la conception, la mise en œuvre, le déploiement, la surveillance et l'exploitation continue.
Instrumenter, surveiller et analyser le comportement du système afin d'identifier de manière proactive les risques, les problèmes de performance et les opportunités d'améliorer la résilience et la disponibilité.
Améliorer et maintenir les systèmes de construction, de test et de livraison afin d'accroître la sécurité du déploiement, la répétabilité et la productivité des développeurs.
Moderniser le code et les dépendances existants afin de maintenir la plateforme à jour avec les bibliothèques, les cadres et les meilleures pratiques pris en charge.
Maintenir et améliorer en permanence la sécurité du système, notamment en corrigeant les vulnérabilités, en améliorant les contrôles et en soutenant les exigences de conformité.
Adapter la plateforme afin de traiter des ensembles de données clients de plus en plus volumineux et complexes, y compris des modèles plus grands et des formats de données en constante évolution.
Promouvoir l'automatisation et les capacités en libre‑service afin de réduire les interventions manuelles et d'aider le système à « fonctionner de manière autonome » autant que possible.
Travailler en étroite collaboration avec les collègues afin de partager les connaissances, d'examiner les conceptions et le code de manière constructive, et de se soutenir mutuellement lors d'incidents et de rotations d'astreinte.
Collaborer avec les chefs de produit, les architectes, les partenaires de sécurité et les équipes d'assistance afin de garantir la satisfaction des besoins des clients tout en maintenant un système stable et prévisible.
Participer à une rotation des permanences et contribuer à la réponse aux incidents, à l'analyse des causes profondes et à l'amélioration de la fiabilité à long terme.
Appliquer des outils et des automatisations modernes, y compris des approches assistées par l'IA lorsque cela est approprié, afin d'améliorer la fiabilité, l'efficacité...