Software Engineers & Designers
Software engineers and designers research, design, evaluate, integrate and maintain software applications, technical environments, operating systems, embedded software, information warehouses and telecommunications software.

Main 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 including mobile applications
- 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 including mobile applications
- 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.