Développeur Projet (Project Developer)

Montréal
Scénographie (Scenography)
Full-time
English version soon.

Le Développeur Projet, sous la direction du directeur du département Scénographie, fait partie de l’équipe d’intégrateurs technologique. Il a pour vocation d’utiliser ou de développer tous les outils logiciel nécessaires au bon fonctionnement d’une installation multimédia complexe faisant communiquer ensemble de multiples logiciels, protocoles et matériels, afin de contrôler et superviser tout système d’une installation AV. Parmi les outils existants figurent des logiciels reconnus dans l’industrie du multimédia ainsi que des solutions développées à l'interne. Le titulaire a également la capacité de développer ses propres outils en fonction des besoins et est capable d’estimer l’effort que cela représente.
 
Le Développeur Projet devra comprendre la plate-forme X-AGORA, suite de logiciels maison permettant la mise en place d’expériences multimédias interactives complexes déployées sur de multiples ordinateurs. Il devra être à l’aise avec le langage de scripting LUA exposé par X-AGORA et JavaScript utilisé par Node-RED (via Node.js) afin d’implémenter les scénarios préalablement spécifiés avec le client. Une fois la solution testée localement, le Développeur Projet doit se déplacer et déployer/intégrer la solution sur le site.
 
FONCTIONS ET RESPONSABILITÉS

1.    Développement logiciel : “Show Control et ses Outils”, Objets connectés, Automation : 
•Programmation de solutions logicielles personnalisées permettant la commande et la supervision de tout systèmes AV d’une installation.  Cette interface a pour but de simplifier les opérations pour le client.  Ainsi d’être capable de donner un feedback de l’état des équipements contenus dans une installation;
•Programmation de solutions logicielles personnalisées permettant la communication des objets connectés avec l’installation AV;
•Contribuer à la fondation et à l’application de nouveaux environnements;
•Concevoir des tests unitaires, de régression et d'intégration;
•Programmer des solutions logicielles spécialisées permettant une intégration de contenus à l’environnement.
 
2.    Intégration de systèmes AV et multimédias :
•Implantation de la solutions logicielle (show control);
•Utilisation et intégration de la plateforme X-Agora et Node-RED pour l’élaboration d'expériences multimédias complexes;
•Utilisation des outils de la suite X-Agora, Unity, TouchDesigner pour la gestion des senseurs et de l’interactivité.
 
3.    Recherche et développement:
•Participer au processus engendrant la création d’outils internes au département;
•Bâtir des liens avec des logiciels internes/externes et divers périphériques matériels (son / éclairage);
•Participer aux ateliers de discussion des projets et développement de solutions;
•Être constamment à l'affut des nouveautés (multimédia, logiciels et solution d'intégration);
•Rechercher et valider l’utilisation de nouveaux procédés et de nouvelles technologies des projets;
 
4.    Support et documentation:
•Rédiger la documentation technique concernant l'opération des systèmes logiciels mis en place, à la fois pour un usage interne ou par le client;
•Réaliser le diagnostic et le débogage des systèmes déployés, sous la supervision de l’équipe opérations.
 
5.    Design et Architecture système:
•Participer à l’élaboration d’architecture système. (Hardware/Logiciel);
•Participer au “Costing” projet pour la partie développeur projet.


EXIGENCES DU POSTE ET QUALITÉS REQUISES

EXIGENCES
•Diplôme Universitaire de 1er cycle en Informatique, multimédia, média interactif ou l’équivalent;
•Maîtrise professionnelle fonctionnelle du français et de l’anglais, autant à l’oral qu’à l’écrit;
•Expérience de travail de 3 à 6 ans en développement logiciel;
•Connaissance de langages interprétés de programmation (JavaScript, Node.js, Node-RED, Python, Lua  etc.);
•Expérience avec les protocoles de communication ( TCP, UDP, HTTP,  MQTT, OSC, MIDI, DMX, Art-Net, sACN, , RS232, UART, SPI, I2C, etc);
•Maîtrise des outils de contrôle de versions et de distribution (GIT, NPM, PIP) est un atout;
•Expérience de méthodes de développement Agiles est un atout;
•Connaissance des langages compilés (C/C++, C#, etc.) est un atout;
•Connaissances en logiciels de programmation type dataflow (Max/MSP/Jitter, Pure Data, etc) est un atout;
•Connaissances en logiciels de programmation créative (Touch Designer, Unity3D, OpenFrameworks, vvvv, Processing, etc) est un atout;
•Connaissances en système virtuelle (Docker, VM, etc.) est un atout; 
•Connaissances en développement d’application client/serveur dans des environnements multi-utilisateurs est un atout; 
•Connaissance en développement dans un environnement avec intégration continue (CI) et tests automatisés est un atout;
•Expérience dans un ou plusieurs des domaines suivant est un atout:
-Software-as-a-Service (SaaS);
-Micro-services (Docker, Kubernetes)
-Serveur de gestion de médias;
 
QUALITÉS
•Motivation à apprendre de nouvelles techniques et à utiliser de nouveaux outils;
•Autodidacte passionné; 
•Esprit logique;
•Capacité à bien travailler en équipe et sous pression;
•Avoir un bon sens de l’observation et porter une attention particulière aux détails;
•Être organisé dans la gestion de sa charge de travail;
 
CONDITIONS DE TRAVAIL PARTICULIÈRES
 
•Horaire flexible;
•Déplacements occasionnels;
•Travail prolongé à l’ordinateur.
•Doit pouvoir se déplacer fréquemment à l'étranger pour l’intégration sur le site du client

Soumettez dès maintenant votre candidature!
Nous communiquerons seulement avec les candidats sélectionnés.

NOTE : Veuillez noter que la forme masculine utilisée désigne aussi bien les femmes que les hommes. Le genre masculin est utilisé sans aucune discrimination et dans le seul but d’alléger le texte.