Are you passionate about great storytelling, about exploring the issues that matter, about pushing the boundaries in new audiovisual experiences? So are we. As Canada’s public producer and distributor, the National Film Board has been telling the country’s stories and pioneering breakthroughs in virtually every field of audiovisual content since 1939. But to do this, we need a team that truly reflects the richness and diversity of Canada. If you’d like to be a part of this team—and part of the NFB’s incredible legacy—we’d love to hear from you.
SUMMARY OF DUTIES
As a member of the Digital Platforms team, helps execute all components of the team’s software solutions in all phases of development. Using web and front- and back-end expertise, assists in the design, programming, approval, implementation and maintenance of interfaces, applications, web services and APIs. Monitors developments in technology and contributes to technological choices and the development of system architecture.
MAJOR RESPONSIBILITIES
Assists in the design, programming, approval, implementation and maintenance of software solutions (interfaces, applications, web services, API), in collaboration with team members and internal and external partners.
Responsible for front-end web programming/design and integrating dynamic interfaces adapted to needs defined by the user-experience designer.
Participates in feasibility analysis of projects and, alongside other Digital Platforms team members, proposes innovative solutions.
Collaborates in project planning and follow-up to implement the solutions developed.
Contributes to the development of an architecture adapted to the specific needs of media management, including the implementation of APIs that respect the best practices of Service Oriented Architecture (SOA) development.
Participates in implementing and documenting solutions for the cloud infrastructure.
Participates in peer code review, based on programming standards, to ensure the quality of applications under development.
Checks the quality of delivered solutions and contributes to the development and programming of test scenarios.
Oversees the development and maintenance of the technical aspects of digital projects (websites, native applications, APIs) based on project’s needs and in collaboration with other team members.
Creates solutions that connect various NFB digital products to APIs and internal systems.
Promotes and applies test-driven development (TDD) to deliver a sustainable and high-quality work product.
Contributes to the maintenance of test and development environments, as well as continuous integration and deployment flows.
Researches and proposes efficient use of software libraries and third-party modules, and submits corrections or adjustments, as per internal requirements.
Keeps abreast of new trends in software and technological tools, and actively participates in discussions about adopting them within the NFB.
Applies AGILE methodology: daily stand-up meetings, planning, retrospectives, demos, etc.
REQUIRED QUALIFICATIONS
University degree in an appropriate discipline such as web design and development, software engineering, computer science, or equivalent;
Minimum of three (3) years of relevant experience in web development, or an equivalent combination of training and experience;
Good knowledge of current applications and tools used in web design, development and implementation;
Thorough knowledge of the following programming languages: Python, HTML/CSS, Bootstrap, Vue.js, React or Node.js (ES6);
Very good knowledge of Git and Git workflows (e.g., code reviews, branch manipulation, etc.), as well as repository management (GitLab/GitHub);
Experience in building websites with Django, Flask, Craft CMS or WordPress;
Expertise design and versioning of RESTful APIs to separate front-end responsibilities from back-end services through interfaces;
Knowledge of MySQL, ElasticSearch or Mongo databases, caching technologies such as Redis or Memcache and server technologies such as Apache2 or Nginx;
Understanding of and experience with container technologies (Docker) to build and package applications;
Experience with software architecture, including the use of principles and patterns to design applications that are stable, easy to update, and without excessive engineering;
Understanding and knowledge of the UNIX environment;
Bilingualism in both official languages (French and English), both orally and in writing
PERSONAL QUALITIES
Excellent ability to manage multiple assignments simultaneously while using an organized, meticulous, structured and rigorous work approach;
Open-mindedness, creativity, innovation, judgment, thoroughness and team spirit;
Enjoys problem solving and perseveres in the face of obstacles.
The NFB is committed to building a skilled, diverse workforce that’s reflective of Canadian society. It promotes initiatives such as employment equity and encourages candidates to voluntarily indicate in their cover letter if they are a woman, a member of a First Nations group, Inuk, Métis, a person with a disability, or a member of a visible-minority group.
The NFB is also committed to developing inclusive, barrier-free selection processes and work environments. Feel free to advise us of any accommodation needs.
Please note that only applicants selected for an interview will be contacted.