Overview
In a fast-moving world, computer science drives the technological breakthroughs that continue to reshape how we live and work. The BSc (Hons) Computer Science at Durham University is designed to build the fundamental knowledge and practical skills genuinely in demand across the sector, covering innovative applications such as machine learning, deep learning, computer vision, virtual and augmented reality and cybersecurity. Close links with local high-technology industries and national and international employers keep the curriculum current, allowing new topics to be introduced as the sector's priorities shift. Students are taught by researchers with expertise spanning artificial intelligence, data science, robotics, high-performance computing and graphics, with the Year 3 Individual Project offering direct engagement with cutting-edge departmental research. Alongside academic knowledge, the course builds genuine career-focused skills, including a Year 2 Software Engineering module that involves a team project with an external organisation. Teaching takes place within a purpose-built environment combining lecture and seminar rooms, open-plan workspace and dedicated labs and computer rooms. The course suits students who want a strong grounding across theoretical and practical computer science, with the option to extend their studies with a year abroad or industry placement.
What You'll Learn
Algorithms and data structures, alongside computational thinking and problem-solving
Computer systems architecture, covering both hardware and software components
Mathematics for computer science, including linear algebra, calculus and probability
Programming fundamentals and multiple programming paradigms, including procedural, object-oriented and functional styles
Networks, distributed systems, databases and cybersecurity
Theory of computation, covering computability, complexity and abstract models
Artificial intelligence, including machine learning, intelligent search and questions of bias and fairness
A substantial Individual Project in the final year, applying advanced knowledge to a challenging computing problem
Learning Outcomes
By the end of the course, students will be able to apply core computer science principles across algorithms, systems architecture and multiple programming paradigms to design effective, real-world software solutions. They will be equipped to use mathematical and theoretical foundations, from computability theory to artificial intelligence, to analyse and solve complex technical problems. Through a substantial Individual Project and a team-based software engineering project with an external organisation, students will develop the research, collaborative and professional skills mirroring genuine industry practice. Graduates will leave with a strong, industry-informed grounding in computer science, well prepared for careers spanning software development, data science, cybersecurity and technology consultancy, or for further postgraduate research.

Durham University