Computer Science is a dynamic discipline. What began with the curiosity of only a handful of academics has blossomed into a field with an impact on our lives that would have astonished many pioneers. In the past 50 years computers have contributed to numerous advances in almost every field, yet developments still show no sign of slowing.
Computer Science now forms the nucleus of a new mathematical science of information processing and communication. Future changes in computing technology will depend on advances in this science. You will learn about all kinds of computational systems, their theory, design, development and application. This includes programming languages, software engineering, artificial intelligence, operating systems, databases, nature-inspired computation, concurrent computing, robotics and the theory of computation. The degree incorporates concepts from fields as diverse as mathematics, engineering, linguistics and psychology.
In your first year you gain a firm foundation in programming, plus the principles of data structures and algorithms; artificial intelligence; and relevant logic and mathematics. Our main teaching language is Java, a language widely used in enterprise systems, but you will also learn functional programming, which is a style of programming with a deep connection to logic. You will also spend a third of your time on business-related subjects.
In your second year you move on to study enabling technologies and their application. You will learn about a wide range of subjects from the mathematics for modelling and decision making which underpins much of modern machine learning, to systems-level programming, networks, and cyber security. Your programming repertoire will be broadened by exposure to the C programming language plus further functional programming. You will also be taught professional software engineering techniques and apply them to develop a large team project in Java such as a multiplayer networked game.
In your third year you will undertake a full year in industry with PwC.
In your final year you have freedom of choice to specialise in particular areas of computer science. The choice available covers computer graphics, computer security and verification, theoretical computer science, human-computer interaction, artificial intelligence, machine learning, robotics, computer vision, and teaching computer science. You also spend one-third of your time on a final degree project. This includes writing a large piece of software or doing a major piece of research, and brings together all of the computer science skills you have acquired.
During your placements you will be productively employed and play an active, and valued, part on project teams and will make meaningful contributions to fee earning client projects. You will be equipped with the opportunity to apply your learning in a challenging but fully supported environment. PwC has a client base ranging from local to multinational and global companies, across all sectors and industries.
You will be fully supported when on placement with PwC, you will have a dedicated people manager, buddies, mentors, a dedicated development team, and will still be able to access all of the University support systems too.
Alongside developing your technical skills through your placements with PwC you will develop a combination of interpersonal skills (eg rapport building, behavioural styles, working in a team and networking) and consulting skills, (eg models of consulting, distinctive business advisor, change management and analytical skills) embedding the PwC Experience.