Software engineers and designers
More about this career
- 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 coordinate 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 coordinate teams of information systems professionals in the development of software and integrated information systems, process control software and other embedded software control systems.
- 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.
- Application architect
- Cloud infrastructure engineer
- Cloud operations engineer
- Computer software engineer
- Embedded software engineer
- Mobile development lead
- Site reliability engineer
- Software and information technology project manager
- Software architect
- Software design engineer
- Software design project manager
- Software design verification engineer
- Software designer
- Software project manager
- Software systems integration engineer
- Software technical architect
- Software testing engineer
- Telecommunications software engineer
- Systems architect