Research Software Developer

McGill University
Montreal, QC, Canada
Job Type:
  • Programmer/Developer
Degree Level Required:
Apply Now

Research Software Developer

The goal for this position is to develop software to aggregate and harmonize disparate data collection from sites across Canada who are collaborating with the MNI. This role will also involve tailoring the internal processing and storage of a digital consent process for participants willing to share data and materials for research purposes. This will involve working with several units at the Montreal Neurological Institute, including the core neuroinformatic group, the clinical research unit, the Tannenbaum Open Science Institute team including the Open Science Biorepository Team (C-BIG) and specific units all involved in patient recruitment. The deliverables will be the synthesis of data from multiple site collections and the development of key technical functionalities for the optimization of patient recruitment. Most of this work will include development and maintenance of web-based technologies, as well as documentation and testing of various tools and software.


Create tools to aggregate meta-data from several bio-repositories across the country. Create a complete user experience that adapts existing workflows around proper ethical standards, technical requirements, and e-learning functionalities in a way that helps with the recruitment of subjects for research purposes. Execute unit integration and acceptance testing. Deploy, secure, maintain and ensure continual monitoring of platform services for the scientific community. Contribute to the development of a web-based tool used for the recruitment of patients (Javascript is important, PHP is an asset). Develop interoperability to existing database systems. Test and debug various software applications. Participate in team code reviews. Revise and update technical documentation that relates to the existing workflows of the various units and departments involved. Maintain and monitor various systems and applications used as part of this initiative. Design specific interfaces that mould to the user experience. Discuss and interface with a variety of researchers and developers within a team environment towards the goal of patient recruitment. Participate in design meetings.


Research or industry experience with relational database systems.

Expertise with web development (PHP, JavaScript/). Experience with Unix/Linux operating systems. Experience with e-learning systems is an asset.

Experience computing on large datasets is an asset.

Experience with version control systems (e.g. git, svn) and team-based development methodologies.

Strong programming skills and understanding of modern languages.

Knowledge of HTML5, CSS3, Bootstrap and W3C standards.

Excellent communication skills and team-oriented attitude.

Good documentation practices.

Good organizational skills and ability to learn quickly.

Familiarity with academic research environments.

Additional Information

The posting will be open until January 21st.