Careers with Compute Canada

French

We are an equal opportunity employer offering a competitive compensation and benefits package, and a stimulating, professional work environment. We thank all candidates for their interest in careers with Compute Canada; however, only those selected for an interview will be contacted.

Compute Canada leads the advancement of research and innovation by positioning state-of-the-art advanced research computing (ARC) systems, storage and software solutions. Together we provide essential ARC services and infrastructure for Canadian researchers and their collaborators in academic and industrial sectors. Our world-class team of more than 200 experts employed by 35 partner universities and research institutions across the country provide direct support to research teams. Compute Canada is a proud ambassador for Canadian excellence in advanced research computing nationally and internationally.

 


Position Title: Junior Programmer/Analyst
Reports To: Chief Technology Officer (CTO), Compute CanadaBILINGUAL-CC-WEB-LOGO (1)
Job Type: Full-time for 2 years with possibility for extension
Location: Anywhere in Canada with good internet and reasonable access to air travel

Website: www.computecanada.ca

Compute Canada, in partnership with regional organizations ACENET, Calcul Québec, Compute Ontario and WestGrid, leads the acceleration of research innovation by deploying state-of-the-art advanced research computing (ARC) systems, storage and software solutions. Together we provide essential ARC services and infrastructure for Canadian researchers and their collaborators in all academic and industrial sectors. Our world-class team of more than 200 experts employed by 35 partner universities and research institutions across the country provide direct support to research teams. Compute Canada is a proud ambassador for Canadian excellence in advanced research computing nationally and internationally.

Job Summary
Compute Canada is in the process of a major technology refresh, which includes investment in 4 major shared national ARC systems. It is important that a consistent user experience be delivered across these four systems. At the same time, the need for Compute Canada to support scientific platforms, portals and gateways is expanding dramatically. To meet these needs, Compute Canada is undertaking development of a common middleware layer across its sites. This will include (at least): common Authentication, Authorization and ID Management, monitoring, resource publication and data transfer services. Research Data Management (RDM) service development also constitutes an important current activity within Compute Canada.

Compute Canada is looking for a smart, motivated Junior Programmer/Analyst to join its team of advanced research computing specialists. You will work on a wide range of software development projects in support of Compute Canada’s research platform. The Junior Programmer/Analyst will work on implementing the design of the national advanced research computing platform, and will also have a voice in the overall direction.

Functions & Responsibilities
The Junior Programmer/Analyst will have the following responsibilities:

  • Create, extend, develop, and maintain portals, scientific gateways, and advanced computing software tools and databases.
  • Implement middleware solutions which leverage common Compute Canada services to serve the research community.
  • Participate in Compute Canada’s national technical teams.
  • Work closely with nationally distributed project managers and developers.
  • Create detailed project specifications, testing plans, clear deliverables, and timelines.
  • Collaborate effectively with technical and nontechnical colleagues in Compute Canada.
  • Create internal process and policies as well as user documentation.
  • Provide dedicated support as appropriate to various Compute Canada researchers for their portal and platform project needs.
  • Work with the team managing, developing, and documenting the Compute Canada Database (CCDB), which tracks usage, allocations, and account information for our clients.

Requirements
Successful applicants will have a university degree in computer science, computational science or a related technical field. They must have excellent communication, planning, and time management skills with a strong client-focused work ethic. Consideration will be given to an equivalent combination of education and experience. In addition, the successful candidate will have the following:

  • Interest in advanced computing technology and research
  • Able to generate high quality and usable code
  • Able to understand legacy code, and adopt or improve it
  • Able to work within a distributed team
  • Experience translating user needs into technology services
  • Maintains a current awareness of emerging trends in programming and development
  • Ability to work creatively, collaboratively, and effectively both as a team member and independently and to promote teamwork among colleagues
  • Evidence of ability for ongoing professional development and contribution
  • Significant experience with SQL (or a university course in relational databases)
  • Experience with MVC frameworks (such as Ruby on Rails)
  • Familiarity with automated testing, and testing frameworks such as RSpec
  • Experience with Linux/Unix production environments
  • Experience with git for revision control
  • Experience in REST API design and development
  • Familiar with authentication and authorization mechanisms including LDAP
  • Self-starter with strong self-management skills
  • Ability to organize and manage multiple priorities
  • Strong project management skills
  • Strong communication skills
  • Ability to quickly learn, attain proficiency, and incorporate new programming languages and technologies

The following skills and abilities are not required but would be an asset:

  • Experience working with IAAS clouds
  • Experience with object storage.
  • Experience with large-scale, cloud-based web portals which integrate storage, database and web services.
  • Experience with portals and scientific gateway development
  • Experience with agile development methodologies
  • Experience with UI design and User Experience methods
  • Broad experience in software planning, testing, and change management
  • Experience with API authoring tools, such as RAML, Swagger, WSO2, etc.
  • Experience with tools for authentication & authorization, and identity management such as Oauth, JWT, Shibboleth, LDAP, etc.
  • Front end web development experience (Javascript, jQuery, CSS, AJAX)
  • Strong interpersonal skills and the ability to work successfully with a variety of personalities
  • Experience with scientific or research-oriented projects
  • Previous experience working in a home office environment

How to Apply
Interested candidates should send their resume and cover letter via email to hr@computecanada.ca indicating name of the position of interest in the title.  We thank all applicants, however, only those selected for an interview will be contacted.


Position Title: Senior Programmer/Analyst
Reports To: Chief Technology Officer (CTO), Compute CanadaBILINGUAL-CC-WEB-LOGO (1)
Job Type: Full-time for 2 years with possibility for extension
Location: Anywhere in Canada with good internet and reasonable access to air travel

Website: www.computecanada.ca

Compute Canada, in partnership with regional organizations ACENET, Calcul Québec, Compute Ontario and WestGrid, leads the acceleration of research innovation by deploying state-of-the-art advanced research computing (ARC) systems, storage and software solutions. Together we provide essential ARC services and infrastructure for Canadian researchers and their collaborators in all academic and industrial sectors. Our world-class team of more than 200 experts employed by 35 partner universities and research institutions across the country provide direct support to research teams. Compute Canada is a proud ambassador for Canadian excellence in advanced research computing nationally and internationally.

Job Summary

Compute Canada is in the process of a major technology refresh, which includes investment in 4 major shared national ARC systems. It is important that a consistent user experience be delivered across these four systems. At the same time, the need for Compute Canada to support scientific platforms, portals and gateways is expanding dramatically. To meet these needs, Compute Canada is undertaking development of a common middleware layer across its sites. This will include (at least): common Authentication, Authorization and ID Management, monitoring, resource publication and data transfer services. Research Data Management (RDM) service development also constitutes an important current activity within Compute Canada.

Compute Canada is looking for a smart, motivated Senior Programmer/Analyst to join its team of advanced research computing specialists. You will work on a wide range of software development projects in support of Compute Canada’s research platform.  The Senior Programmer/Analyst will be a seasoned expert, with ten or more years of programming experience, and a strong background in large scale architecture and solution design. They will work with the existing Compute Canada national teams to drive the direction of the national platform, and to see its implementation carried out.

Functions & Responsibilities
The Senior Programmer/Analyst will have the following responsibilities:

  • Design middleware solutions which leverage common Compute Canada services to serve the research community.
  • Create, extend, develop, and maintain portals, scientific gateways, and advanced computing software tools and databases.
  • Participate in Compute Canada’s national technical teams.
  • Work closely with nationally distributed project managers and developers.
  • Create detailed project specifications, testing plans, clear deliverables, and timelines.
  • Collaborate effectively with technical and nontechnical colleagues in Compute Canada.
  • Create internal process and policies as well as user documentation.
  • Provide dedicated support as appropriate to various Compute Canada researchers for their portal and platform project needs.
  • Work with the team managing, developing, and documenting the Compute Canada

Database (CCDB), which tracks usage, allocations, and account information for our clients.

Requirements
Successful applicants will have a university degree in computer science, computational science or a related technical field. They must have excellent communication, planning, and time management skills with a strong client-focused work ethic. Consideration will be given to an equivalent combination of education and experience. In addition, the successful candidate will have the following:

  • 10+ years of experience as a programmer
  • Strong background in largescale architecture/solution design
  • Ability to communicate designs to stakeholders
  • Interest in advanced computing technology and research
  • Able to generate high quality and usable code
  • Able to understand legacy code, and adopt or improve it
  • Able to work within a distributed team
  • Experience translating user needs into technology services
  • Maintains a current awareness of emerging trends in programming and development
  • Ability to work creatively, collaboratively, and effectively both as a team member and

independently and to promote teamwork among colleagues

  • Evidence of ability for ongoing professional development and contribution
  • Significant experience with SQL (or a university course in relational databases)
  • Experience with MVC frameworks (such as Ruby on Rails)
  • Familiarity with automated testing, and testing frameworks such as RSpec
  • Experience with Linux/Unix production environments
  • Experience with git for revision control
  • Experience in REST API design and development
  • Familiar with authentication and authorization mechanisms including LDAP
  • Self-starter with strong self-management skills
  • Ability to organize and manage multiple priorities
  • Strong project management skills
  • Strong communication skills
  • Ability to quickly learn, attain proficiency, and incorporate new programming languages and technologies

The following skills and abilities are not required but would be an asset:

  • Experience working with IAAS clouds
  • Experience with object storage.
  • Experience with large-scale, cloud-based web portals which integrate storage, database and web services.
  • Experience with portals and scientific gateway development
  • Experience with agile development methodologies
  • Experience with UI design and User Experience methods
  • Broad experience in software planning, testing, and change management
  • Experience with API authoring tools, such as RAML, Swagger, WSO2, etc.
  • Experience with tools for authentication & authorization, and identity management such as Oauth, JWT, Shibboleth, LDAP, etc.
  • Front end web development experience (Javascript, jQuery, CSS, AJAX)
  • Strong interpersonal skills and the ability to work successfully with a variety of personalities
  • Experience with scientific or research-oriented projects
  • Previous experience working in a home office environment

How to Apply

Interested candidates should send their resume and cover letter via email to hr@computecanada.ca indicating name of the position of interest in the title.  We thank all applicants, however, only those selected for an interview will be contacted.


Position Title: DevOps Developer
Reports To: Chief Technology Officer (CTO), Compute CanadaBILINGUAL-CC-WEB-LOGO (1)
Job Type: Full-time for 1 year with possibility for extension
Location: Anywhere in Canada with good internet and reasonable access to air travel

Website: www.computecanada.ca

Compute Canada, in partnership with regional organizations ACENET, Calcul Québec, Compute Ontario and WestGrid, leads the acceleration of research innovation by deploying state-of-the-art advanced research computing (ARC) systems, storage and software solutions. Together we provide essential ARC services and infrastructure for Canadian researchers and their collaborators in all academic and industrial sectors. Our world-class team of more than 200 experts employed by 35 partner universities and research institutions across the country provide direct support to research teams. Compute Canada is a proud ambassador for Canadian excellence in advanced research computing nationally and internationally.

Job Summary

Compute Canada is seeking a full time developer to work on tools to accelerate the development of scientific data platforms. A key platform that will benefit from this work will be the CANFAR astronomy platform, but the tools developed will be applicable to any scientific platform or portal. In particular, the developer will work closely with Compute Canada team members and client staff at the Canadian Astronomy Data Centre (CADC) to develop cloud-based solutions relevant to astronomical data as part of a co-development project with CADC.

Functions & Responsibilities

Reporting to the Compute Canada CTO, the DevOps Developer will have the following responsibilities:

  • Work within the C3TP team to design, develop and implement services on Compute Canada infrastructure to serve astronomy use-cases.
  • Interact with the CADC development team to ensure that user requirements are satisfied.
  • Participate in the development of new services supporting Compute Canada’s Advanced Research Computing strategy.
  • Interact with various Compute Canada technology teams related to storage, networking, cloud operations and others to ensure that the engineered solutions take advantage of Compute Canada platform and service developments.
  • Significant software development
  • Quality control, testing and documentation of service solutions

Requirements

The successful candidate should have the following education, skills and abilities:

  • Bachelor’s Degree in Computer Science or equivalent in combination of skills and experience
  • 2+ years of devops experience working with IAAS clouds, including:
    • Cloud-based web portals
    • Integration of storage, database, processing, authorization and web services
    • Object storage services (S3 or Swift)
    • Familiarity with authentication and authorization mechanisms including LDAP, PAM/SSSd; able to participate in formation of federated identity management mechanisms
  • 2+ years of experience with at least one web development language (Java, Ruby, Python, Perl).
  • Experience with at least one project or relevant course work which designed and developed REST API’s
  • Some familiarity with Linux environments
  • Some experience with agile development methodologies
  • Strong interpersonal skills and the ability to work successfully within a diverse team
  • Strong attention to detail
  • Ability to prioritize and manage time efficiently
  • Some travel may be required as part of this position

Compute Canada provides an OpenStack based IAAS cloud, and is provisioning a large, multi-petabyte object storage service. Compute Canada utilizes a broad mix of languages, development tools and platforms. All infrastructure services are hosted on Linux platforms (RHEL/Centos and Ubuntu). Git is typically used for source code management and versioning.  Back-end databases include MySQL and PostgreSQL. Application layers are written using Java, Ruby on Rails, Python, Perl, and other languages. Interfaces to authentication systems rely on LDAP. This includes some high availability and failover features. Developers maintain skills in these and other technologies, and rely on other team members for additional expertise.

The following skills and abilities are not required but would be an asset:

  • Interest in advanced computing technology and research
  • Experience with scientific or research-oriented projects
  • Previous experience working in a home office environment

How to Apply

Interested candidates should send their resume and cover letter via email to hr@computecanada.ca indicating name of the position of interest in the title.  We thank all applicants, however, only those selected for an interview will be contacted.