cover
Full Time

Full Stack Developer – Interactive Systems and Show Control/ 2 weeks ago

Application ends: 2025-12-05

Full Stack Developer – Interactive Systems and Show Control

Supply + Demand offers creation, production, and consulting services for the design of shows and multimedia experiences, operating at the intersection of art, science, and technology. We create shows combining physical and digital interactions to transform human relationships. Our mission is to build human-centered narrative and collaborative experiences, believing in hybrid systems where analogue, digital, physical, and virtual unite to bring people closer and foster discovery and wonder.

We are seeking a developer for innovative, high-visibility international technology projects, capable of working on modern user interfaces and robust, high-performance backend architectures. You will be responsible for the design, programming, and maintenance of Node-RED systems for controlling and orchestrating shows and interactive experiences. This role requires a balanced mastery of front-end and back-end development, a passion for technical challenges in real-time environments, and a strong focus on software reliability and quality.

Role and Responsibilities:

  • Front-end Development: Design and implement modern user interfaces (HTML, CSS, JavaScript – frameworks like React, Vue welcome). Create interactive analytical dashboards (real-time data visualization, control interfaces). Ensure accessibility, ergonomics, and cross-platform compatibility. Optimize interface performance and user experience.
  • Back-end & Orchestration Development: Develop and maintain server logic and APIs using languages like Python, Node.js, Java, PHP. Design and manage relational or NoSQL databases (MySQL, PostgreSQL, MongoDB). Integrate and deploy Node-RED components for flow orchestration (integrations with MQTT, OSC, HTTP, WebSocket). Implement state management systems (Redis or equivalent) and critical message queues. Ensure backend service security, performance, and scalability.
  • Architecture and Documentation: Participate in designing robust and scalable software architectures. Contribute to technology choices and technical documentation. Support the setup of reproducible deployment environments (CI/CD, containerization).
  • Testing, Maintenance, and Reliability: Perform unit and functional tests for frontend and backend components. Diagnose, fix, and document bugs and technical incidents. Participate in system maintenance, monitoring, and continuous improvement.
  • Collaboration & International Scope: Collaborate with designers, project managers, and developers in an agile framework. Contribute to globally deployed projects, including real-time and distributed environments. Propose improvements to tools, workflows, and development practices.

Requirements:

  • Full-stack web development experience with a good balance between frontend and backend.
  • Interest or experience with Node-RED (or willingness to learn quickly).
  • Good understanding of distributed architectures, real-time communication protocols, and state management.
  • Sensitivity to quality, documentation, and open-source solutions.

Offer Details:

  • Duration: Indefinite, full-time position.
  • Start Date: As soon as possible.
  • Schedule: 40-hour week, Monday to Friday, 8:30 AM to 5:00 PM (flexibility for weekend/evening work possible).
  • Location: 2111 Boul Saint-Laurent in Montreal, with possible remote work depending on activities. Hybrid remote work in Montreal, QC H2X 2T5.
  • Immediate Superior: Antoine Pecatikov, Lead Developer.
  • Benefits: Collective insurance, 8% paid vacation time annually, competitive salary, social committee.

Type of Employment: Full-time

Compensation: $90,000.00 - $95,000.00 per year

Education: Bachelor's degree (Preferred)

Experience: Software development: 3 years (Mandatory)

Willingness to travel: 50% (Preferred)

Share

Supply and Demand

Supply and Demand

  • Address
    2111 Boul Saint-Laurent
View Profile
Your experience on this site will be improved by allowing cookies Cookie Policy