Software Engineering


Ever wondered how your mobile phone works? How text messages, photos and videos are sent between phones, or how you can access your email using your mobile phone?

Software engineers are the people who design and maintain the software behind this functionality, and guarantee that it works. They combine their expertise in computer science, engineering and maths to design, develop and test software.

They need a good balance of relevant knowledge and skill. These include software architecture, system performance, testing and quality assurance, requirements engineering, management of software processes, selection and use of software tools and components, computer and human interaction, and documentation.

Areas of study

The programme is oriented towards producing graduates with a "whole system" view of Software Engineering. Graduates gain not only sound knowledge of current techniques and technologies for developing software, but are also aware of the business contexts in which software is conceived and developed.

Critical thinking, communication with colleagues and clients, and awareness of the role the profession plays in society are strongly emphasised. The programme has a strong engineering perspective providing students with significant exposure to a variety of software processes, project management techniques, quality assurance techniques and software tools, as well as a range of leading edge computing applications, computing technology, and computer systems skills and knowledge.

You can study Software Engineering in the following programmes:

What you will learn

As a student of Software Engineering, you will learn a variety of programming languages and how to design, analyse and maintain high quality software.

You will gain a sound knowledge of operating systems, computer organisation and architecture, data communications, and algorithm design and analysis. In addition to this, you’ll develop skills in mathematics, project management and professional ethics.

Career opportunities

Software engineers don’t just write programs. They meet clients, discuss the needs of their clients, and design solutions. Software engineers work in many application areas, such as banking, health informatics, architecture, medicine, telecommunication and global positioning systems.

Jobs for software engineers are often available nationally and internationally - from start up companies to large multinational companies, and from government departments to consultancies.

More information

Bachelor of Engineering (Honours) in Software Engineering