Research Software Developer

 

Description:

Reporting to the managers of software and technology development at the McGill Centre for Integrative Neuroscience (MCIN) for EEGNet and related projects with the LORIS data platform, the role consists of designing, coding, testing, and maintaining new and existing features for a web-based data/project management and processing software, including both front-end and back-end components and neuroscience imaging and electrophysiology data pipelines. Enhancements, troubleshooting, bug resolution and documentation of new and existing code is required on an ongoing basis, as well as researching and working with emerging data standards (BIDS) and external libraries. This position requires working seamlessly within a small team of software development professionals and the ability to learn and adapt rapidly. The position will also involve working extensively with research teams across the EEGNet network and other EEG related projects to facilitate data standardization and sharing for this collaborative research initiative. The main priorities will be to deliver on the EEGNet project, and related EEG initiatives, including the Global Brain Consortium and leveraging the Canadian Open Neuroscience Platform (CONP). This position requires professional experience and advanced technical skills to perform at the level required for the development, support and deployment required for a large-scale neuroinformatics project environment.

Primary responsibilities:

  • As part of the core team work on the strategic direction of the design, development and implementation phases of the project.

  • Plan, code, test, debug and support software for neuroinformatics research platform.

  • Provide senior professional expertise by developing, testing and maintaining data harmonization and importation processes, interfacing with external data platforms.

  • Engage with stakeholders and their teams at the research sites to ensure their needs are supported.

  • Implement new features according to functional specifications and user requirements.

  • Establish and implement direction of information flow, data handling, database storage and data processing in harmonization with the team.

  • Develop and maintain test suites.

  • Provide training to junior developers and to end users at the sites.

  • Establish new and follow successful best practices and work closely with the various development teams.

  • Create new documentation and ensure that existing documentation is updated. This includes technical documentation directly in the code, training documentation which helps guide future recruits in their learning process, as well as user documentation which outlines how users can interact with and use platforms.

  • Participate in design discussions and team processes.

  • Report regularly on activities.

  • Use of analytical and problem solving skills to arrive at the most efficient solutions under pressure while meeting deadlines.

  • Contribute to the publication of relevant academic papers.

Other Qualifying Skills and/or Abilities

  • Strong professional competencies in Python, PHP and Javascript
  • Experience with React, Redux and/or Typescript is an asset.
  • GitHub development workflow experience
  • Unix-based development environment professional experience is an asset.
  • Experience with Matlab is an asset
  • Experience with building research software for data analysis or visualization is an asset
  • Data visualization software development, particularly for web platforms, is an asset
  • Databasing experience, and design of scalable data handling solutions is an asset
  • Academic background or experience in signal processing, clinical or science research is an asset.

Organization McGill University
Industry IT / Telecom / Software Jobs
Occupational Category Research Software Developer
Job Location Montreal,Canada
Shift Type Morning
Job Type Full Time
Gender No Preference
Career Level Intermediate
Experience 2 Years
Posted at 2022-08-01 5:01 pm
Expires on Expired