Software Development Specialist - Québec, QC

Job offer number: HR-SG-136

You want to make a difference in patient care, join our dynamic, professional and dedicated team to develop innovative solutions to improve medical testing.

As a Software Development Specialist you will be responsible for developing an ECG analysis platform. You will participate in the definition and development of its architecture, develop the graphical interface and implement the various algorithms and visualization tools. You will also participate in the implementation of the development process based on Agile / Scrum approaches, in compliance with the ISO13485 and IEC62304 control standards. You will be able to understand the requirements of the client or the project and will participate in the project meetings to fully integrate the objectives. You will ensure a technological watch to propose solutions taking into account the innovations in development and languages. As part of your missions, you may also have to write technical documentation and provide training to users.


  • Bachelor degree of Engineering

  • 2 years of relevant experience in software engineering and web programming

  • Autonomous and rigorous

  • Good ability to work in a team

  • Good notions of usability engineering and human factor

  • Strong conceptualization, analysis and synthesis skills

  • Mastery of methods and tools of development (UML,, agile methods, object methodologies ...)

  • Experience in a development environment (eg object technology,, Development platform: PyCharm ...)

  • Experience in an environment governed by ISO13485 and IEC62304 (an asset)

  • Knowledge of several programming languages (Python, C, C #, javascript, C ++, ...), as well as some operating systems (Windows, Unix, Linux ...) or real-time OS (operating system) (QNX, eCos, VxWorks ...)

  • Good knowledge of safety standards and procedures

  • Good command of technical English

  • Timeliness to deliver deliverables on time


  • Participate in detailed functional analysis of user needs

  • Study the opportunities and the technological feasibility of the application

  • Develop and write technical specifications based on functional specifications

  • Design a software architecture, and propose the project framework

  • Analyze and develop the components using the appropriate languages (Python, C ++, C, Java, C # ...)

  • Ensure the development and realization of applications (prototypes and modules)

  • Adapt and configure software packages selected for the software architecture

  • Participate in the structuring of databases

  • Harmonize and industrialize all components and applications

  • Document applications for further development and production

  • Define protocols and test scenarios

  • Test, identify and treat possible malfunctions of the developed software

  • Analyze the results and write the test report

  • Check the conformity of the capacity of the structure with the request