Software Engineering Applicants
In British Columbia, software engineering is a discipline of professional engineering and is regulated by Engineers and Geoscientists BC under the Professional Governance Act.
The information provided below covers:
- Regulation of software engineering in BC
- Who needs to be registered
- What happens if I don’t get registered
- Where can I find information about registration
Regulation of Software Engineering in BC
Computer and software engineering have been designated as disciplines of professional engineering since 1988 and 1999, and fall within the definition of professional engineering in the Professional Governance Act. Currently, there are over 700 professional engineer and engineer-in-training members who are working in software engineering in BC. They work across all industries, including aerospace, manufacturing, mining, transportation, telecommunication, finance, government, and education.
Differences between Canada and the U.S. or foreign jurisdictions can sometimes lead to confusion about registration obligations. In British Columbia, anyone who practises software engineering, or who uses the title “software engineer” (or a similar title that implies that they are a software engineer, like “firmware engineer”, “mobile app engineer”, etc.), must be registered with Engineers and Geoscientists BC.
Who Needs to Be Registered?
Not all software development constitutes software engineering. Having the job title “software engineer” in another jurisdiction doesn’t necessarily mean that the work actually constitutes software engineering. In fact, many individuals who develop software probably do not actually engage in software engineering, and are not required to register with Engineers and Geoscientists BC, provided they do not represent themselves as a software engineer.
Organizations often mistakenly assign the title “software engineer” (or other titles that imply that an individual is a “software engineer") to British Columbian employees with roles more appropriately characterized as software developers, designers, programmers, or architects.
Software (or a software intensive system) is considered an engineering work if the following are true:
- The development of the software required “the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software”; and
- There is a reasonable expectation that failure or inappropriate functioning of the software or software intensive system would result in harm to life, health, property, economic interests, the public welfare or the environment.
What Happens if I Don’t Get Registered?
Under statute, individuals and firms (including corporations, partnerships and other legal entities) wishing to practise software engineering or use the title “software engineer” in British Columbia must first be registered with Engineers and Geoscientists BC. If a non-registrant (an individual or firm) practises software engineering, calls themselves a “software engineer”, or uses another title or language implying that they are a software engineer or authorized to practise software engineering in British Columbia, they are contravening sections 54 and 52 of the Professional Governance Act.
In these instances, Engineers and Geoscientists BC will take enforcement action where warranted, and has previously dealt with unauthorized practice and misuse of title concerns relating to non-registrants who have practised software engineering or used titles implying that they were software engineers or authorized to practise software engineering. Note that Engineers and Geoscientists BC is permitted under the legislation to seek injunctive relief to restrict non-registrants from continued contraventions of sections 54 and 52 of the Act.
Learn more about how to apply for registration as an individual, or read information related to firm practice.
Where Can I find More Information about Registration?
To be eligible for registration as a software engineer in BC, you must (A) meet the general academic and experience competence requirements for registration as a professional engineer, and (B) meet the requirements specific to the software engineering discipline.
More detailed information on these requirements can be found on the Engineer First Time Applying in Canada page, but the following is an outline of the requirements:
(A) General Requirements
- Fulfillment of general academic requirements through one of the following means:
- Equivalent of graduation from a 4-year full-time bachelor’s program in applied science, engineering, geoscience, science, or technology; or
- Academic exams based on assessment against the syllabus for professional engineer registration; or
- An interview to confirm exemption from academic exams based on acquired adequate knowledge and expertise.
- Minimum 4 years of satisfactory engineering work experience, and satisfaction of the Canadian Environment Competencies.
- Completion of Law and Ethics requirement through Engineers and Geoscientists BC:
- Possession of English Language Competence for Practice
- Demonstration of good character and good repute based on your references and responses to a questionnaire aligned with Engineers Canada’s National Guideline on Good Character.
(B) Software Engineering Specific Requirements
- Fulfillment of software engineering specific academic requirements through one of the following means:
- A degree from a software or computer engineering program accredited by the Canadian Engineering Accreditation Board;
- A degree from a software or computer program from outside of Canada that is recognized as substantially equivalent; or
- A combination of equivalent education fulfilling the computer engineering or software engineering syllabus requirements.
- Completion of a Competency Assessment, demonstrating experience in line with the required competencies; and the generic or software competency indicators.