This course will equip you with high-level knowledge of computer systems and processes involved in software development and maintenance.
It covers aspects of modern computing, commencing with fundamental programming and theoretical knowledge; and followed by specialisation in computer science, cyber security or software engineering.
You'll use C and Java as the tools for learning core concepts such as object orientation and algorithms. Linux skills are taught throughout the course, starting with the basics and progressing to advanced topics.
This degree is designed to prepare you for careers in computing. As such, Curtin works closely with industry partners both to optimise course content and provide final-year placement opportunities to suitable students.
Students who perform well in their first year of the course can apply to transfer to the Bachelor of Advanced Science (Computing) course. (Note that acceptance is not automatic.)
This major provides in-depth knowledge of software design, algorithm analysis, artificial intelligence, computer communications, databases and graphics.
You will gain the skills required to build operating systems and design new programming languages. Being mathematically based, computer science has a strong emphasis on logic and reasoning.
Strong performance in the first year of this major may allow transfer into the Bachelor of Advanced Science (Honours) course. (An interview is required.)
This major focuses on the key concepts and challenges in data protection and computer software security.
You will examine both the high- and low-level practical aspects of computer security. High-level aspects include cryptography theory, data access policy development and security program management. Low-level aspects include computer forensics, network intrusion detection and incident handling.
Graduates have the skills to identify and implement appropriate applications for specific scenarios, as well as an understanding of issues related to the protection of individual rights.
This major focuses on the software development life-cycle, but goes beyond programming to evaluate and meet customer needs, and to design and test software.
You'll develop design techniques and project management skills to solve real-world problems and build reliable, efficient large-scale software systems.
The Computing major can also be studied as part of the Bachelor of Advanced Science.
See our handbook for more course information.
How this course will make you industry ready
This course is designed so that you gain high-level knowledge of computer systems and processes involved in software development and maintenance. Curtin works closely with industry partners both to optimise course content and provide final-year student placement opportunities.
What jobs can the Bachelor of Computing lead to?
- Computer programmer
- IT professional
- Computer security professional
- Software engineer/developer
- Applications and software development
- Game design and development
- Cyber security
- IT analysis
- Bachelor of Science (Honours)
- Master of Science (Computer Science)
- Master of Philosophy
- Doctor of Philosophy
What you'll learn
- implement secure processes based on best practice when developing software and dealing with computer systems
- evaluate standard algorithms, techniques, and software technologies in a manner that is appropriate for a given problem and think critically and creatively to generate innovative and optimum theoretical and practical solutions
- identify, evaluate and synthesise information from a range of computing sources to optimise the process of software design and implementation
- document software development activities and artefacts and communicate them in written and oral form to both technical and non-technical audiences and communicate effectively in ways appropriate to the audience and purpose
- effectively use new and existing technologies, recognising their advantages and limitations
- sustain intellectual curiosity by updating their knowledge, engage in continuous training and research, and take control of their own learning and development
- recognise and apply IEEE/ACM/ACS standards in the process of software design and development
- contribute to society using technology in an ethical, legal, and socially responsible manner
- demonstrate initiative, leadership and ethical practice when working independently and collaboratively