MSc Computer Science is a generalist programme, which aims to provide a thorough introduction to computing both for new graduates and for those with some work experience.

It is designed specifically for non-computer science graduates who wish to augment their skillset with a solid background in the field. Those with some previous industrial experience in the computer field can also broaden their horizons by achieving a sound knowledge of the theoretical basis and practical applications of computer science.

The emphasis is on practical skills highly desired by the tech industry; however the degree also introduces key theoretical elements including algorithmics, compilers and operating systems.  A significant component of the programme is App Design, which is done through group work, and for real world industry clients.  Some students continue the strong industry link by completing a summer dissertation project with companies such as Microsoft and IBM.

MSc Computer Science comprises 8 taught modules and an Individual Project Report. Of the taught modules, 5 are core, with either 3 option modules, 2 option and 1 elective modules, or 1 option and 2 elective modules.

Compulsory / Core Modules

  • COMP0070 - Algorithmics (15 credits)
  • COMP0068 - Architecture and Hardware (15 credits)
  • COMP0067 - Design (15 credits)
  • COMP0066 - Introductory Programming (15 credits)
    • Please note this module is expected to teach programming in Python, rather than Java, from 2018/19
  • COMP0069 - Systems Infrastructure (15 credits)
  • COMP0073 - Individual Project Report (60 credits)

All modules in this group are compulsory.

Optional Modules

  • COMP0038 - Computer Music (15 credits)
  • COMP0022 - Database and Information Management Systems (15 credits)
  • COMP0039 - Entrepreneurship: Theory and Practice (15 credits)
  • COMP0020 - Functional Programming (15 credits)
  • COMP0021 - Interaction Design (15 credits)
  • COMP0142 - Machine Learning for Domain Specialists (15 credits)
  • COMP0071 - Software Engineering (15 credits)

Choose a minimum of 15 credits and a maximum of 45 credits from these optional modules.

All choices are subject to timetabling and resource constraints.

Elective Modules

  • COMP0024 - Artificial Intelligence and Neural Computing (15 credits)
  • COMP0028 - Computational Photography and Capture (15 credits)
  • COMP0107 - Language Based Security (15 credits)
  • MSIN0068 - Project Management (15 credits)
  • PSYC0021 - Affective Interaction (15 credits)

Choose a minimum of 0 credits and a maximum of 30 credits from these popular optional modules.

All choices are subject to timetabling and resource constraints and the approval of the relevant Module Tutors.

Syllabus content for all postgraduate modules can we found in the Department of Computer Science 2018/19 online syllabus pages.

Programme diet (modules available to you)

Your programme has a set curriculum (also called a diet) which prescribes in what combinations modules can be taken, any restrictions on doing so, and how much credit can and must be taken. The programme information pages show which modules form part of each programme, with links to descriptions and module syllabus information. Modules within a programme can be core, optional, or elective, which reflects whether they must be taken or are optionally taken.

Core modules

Core modules are fundamental to your programme’s core curriculum and are mandatory. You will automatically be registered on your programme's core modules, so will not have to select them. You are guaranteed a place on modules that are core for your programme. There will be no timetable clashes between core modules within a programme.

Optional modules

Optional modules are usually closely related to the programme's core curriculum and you will be able to choose which to take; choices are usually made from within specific groups (for example, choose two optional modules from one group and three from another, etc.) You are not guaranteed a place on optional modules as space is strictly limited. We allocate places on a first come, first serve basis, with preference given to Computer Science students over those of other departments. Bear in mind that some modules have prerequisites that must be met in order to be eligible for a place (see the module syllabus for information.)

Elective modules

Elective modules are usually not specifically related to the programme's curriculum. There is no guarantee of being accepted onto an elective module; they are core and/ or optional on other programme diets, so students on those programmes will be given priority. As with optional modules, some electives have prerequisites that must be met.

Deciding which modules to select

The programme information pages show which modules form part of each programme, with links to detailed module syllabus information and reading lists. You may be able to virtually audit lectures for some modules to get a sense of how the module is delivered. You can look up the timetable for each module via the common timetable to get a sense of the timetable that would eventuate from your module choices, which is an important consideration when making your final choices; you should aim to achieve a timetable that is feasible and will not stretch you too thinly.

Bear in mind that places on optional and elective modules are not guaranteed, so you might not always be able to take all your first choices. In that case, it is a good idea to have a second preference in mind.

If you need guidance with choosing which modules to select then please contact your Programme Director or the Departmental Tutor.

  • Upper second-class Honours degree or higher from a UK university, or an overseas qualification of an equivalent standard, is required.
  • Your degree must be in a subject that is not computer science/information technology or any other degree with a high computing content.
  • If you have more than three IT/Computer Science modules in your first degree then you will be considered overqualified.
  • Maths A level or equivalent, or a maths module at degree level.
  • You must be able to demonstrate that you have some existing programming skills, evidenced by one of the following:
    • minimum one module and maximum 3 modules in programming during first degree;
    • a minimum of one year and a maximum of two years work experience in programming;
    • or an A-Level in Computer Science that includes programming.
  • If you do not have evidence of previous programming skills, you should include a basic computer program that you have written and submit this along with your application. The program should be one to three pages of programming code and include a short description of how it works. A program written in Java or Python would be best. Please add this under the personal statement in the online application.

English Language Requirements

If your education has not been conducted in the English language, you will be expected to demonstrate evidence of an adequate level of English proficiency.

The English language level for this programme is: Good.

Further information can be found on our English language requirements page.

International students

Country-specific information, including details of when UCL representatives are visiting your part of the world, can be obtained from the International Students website.

UK/EU fees (FT):  £11,800 for 2017/18

Overseas fees (FT): £24,610 for 2017/18

UK/EU fees (FT):   £12,380 for 2018/19

UK/EU fees (PT):   N/A for 2018/19

Overseas fees (FT): £25,880 for 2018/19

Overseas fees (PT): N/A for 2018/19

The Department of Computer Science is offering Excellence Scholarships to our taught postgraduate students. To check your eligibility and to apply, see the Computer Science Excellence Scholarship application form.

For a comprehensive list of the funding opportunities available at UCL, including funding relevant to your nationality, please visit the Scholarship and Funding website.

Tuition Fee Deposit

This programme requires that applicants firmly accepting their offer pay a deposit. This allows UCL to effectively plan student numbers, as students are more demonstrably committed towards commencing their studies with us.

For full details about the UCL tuition fee deposit, please see the central UCL pages.

Tuition fee deposits within the Department of Computer Science are currently listed as:

*where part-time is an available mode of study

Top graduate destinations include:

Top graduate roles include:

Top further study destinations:

  • Accenture
  • Barclays
  • Cap Gemini
  • Cisco
  • Implementation specialist
  • Java Developer
  • Software Engineer
  • Technology Consultant
  • University of Cambridge
  • UCL
  • University of Sciences, Paris

Average starting salary £31,200 (all data from Graduate Surveys, January 2014)

Programme Administrator


For queries, please contact the team on the email below.

Office: 5.22, Malet Place Engineering Building

Telephone: +44 (0) 20 7679 3674


Click here for more information

To apply now click here.

Students are advised to apply as early as possible due to competition for places, later applications may be less successful.

Those applying for scholarship funding (particularly overseas applicants) should take note of application deadlines.

Deadline for submission of applications is 17:00 on 26th April 2019, including references and additional documents.