http://www23.statcan.gc.ca/imdb/p3VD.pl?Function=getVD&TVD=122372&CVD=122376&CPV=2173&CST=01012011&CLV=4&MLV=4
Main duties
Software engineers and designers perform some or all of the following duties:
Collect and document users' requirements and develop logical and physical specifications
Research, evaluate and synthesize technical information to design, develop and test computer-based systems
Develop data, process and network models to optimize architecture and to evaluate the performance and reliability of designs
Plan, design and co-ordinate the development, installation, integration and operation of computer-based systems
Assess, test, troubleshoot, document, upgrade and develop maintenance procedures for operating systems, communications environments and applications software
May lead and co-ordinate teams of information systems professionals in the development of software and integrated information systems, process control software and other embedded software control systems.
Employment requirements
A bachelor's degree, usually in computer science, computer systems engineering, software engineering or mathematics
or
Completion of a college program in computer science is usually required.
A master's or doctoral degree in a related discipline may be required.
Licensing by a provincial or territorial association of professional engineers is required to approve engineering drawings and reports and to practise as a Professional Engineer (P.Eng.).
Engineers are eligible for registration following graduation from an accredited educational program, three or four years of supervised work experience in engineering, and passing a professional practice examination.
Experience as a computer programmer is usually required.