Summer Internships

The Digital Technology Group (DTG) organise summer internships for current University of Cambridge undergraduate students. We are not normally able to offer internships to students studying at other institutions. The 2014 DTG Internship Programme will be supervised by Andrew Rice and Alastair Beresford. Previous years have been supervised by Robert Harle (2012), Andrew Rice (2008,2009,2010,2011,2013) and Alastair Beresford (2009,2010,2011,2013)

Various (loose) themes have been applied to the internships, including:

Summer 2014 UROPs—Technology for improving supervisions

Last year we built Otter, a website designed to provide some online tools for improving teaching in the department.

This year's project will be to extend Otter to incorporate unit testing of software practicals. The goal is to provide a system which can safely test code written in Java, ML, Prolog or C/C++. We would like to switch the existing Java practical system over to using this instead. Additionally, we will provide a mechanism for supervisors and lecturers to write their own tests to make it easier to set and mark practical work for other courses. We'd also like to look into some source code analysis so that we can test for stylistic elements (such as empty exception handlers).

We will be offering up to 6 internship positions building open-source technology for helping supervisors and improving supervision quality. The interns will work with us and two postdoctoral researchers in the department. Placements will run for a 10 week period over the summer vacation.


  • The tools we are building will be used across the department including by your own supervisors
  • Get experience working as a software development team (you'll get to experience Agile methods, one of the supervising postdocs is a certified Scrum-Master!)
  • Your code will be open source and so you can use it yourself in future or show it to future employers
  • Summer bursary (£2400) to cover living expenses over the summer (and we have a budget to spend on fun stuff too)
  • Get an idea of what it is like to be a PhD student in the department
  • Work closely with staff and researchers

Skills required: Java (Students who have completed exercises 1-7 of the Part 1A Programming in Java course should be ok). Some familiarity with Linux and virtualisation is a bonus but we can teach you if not.

Eligibility: You must be a current Cambridge undergraduate student who will be continuing to study as an undergraduate next year. Commonly this means you must be currently in Part 1A or Part 1B. Part II students who are likely to continue to Part III are also eligable.

Dates: The project will start on Monday 23rd June 2014 and will run for 10 weeks, finishing on Friday 29th August 2014.

Applications or questions should be sent by email to Andrew Rice. Your application should be a printable document (e.g. PDF) containing: your name and email address, a photograph (so we can remember who you are when we speak to you!), details of your previous programming experiences, and a brief paragraph with your interests or ideas about the project. Deadline for applications is Monday 17th Feb 2014