How do I get into Cambridge Computer Science?
September 07, 2021
4 min read
I’ve had a couple of comments on my YouTube videos asking about advice on applying to Cambridge, so here’s a snippet with some of my thoughts. Take this with a massive pinch of salt, as a) I’m not involved in interviewing candidates, b) this is just my perspective and c) I applied back in 2016 and gosh the younger years are so talented I wonder if I’d have got in if I were to apply now!
Having said all this, I think it comes down to two things you can demonstrate:
- Showing you’re interested in Computer Science
- Having a strong academic record
And thirdly, having a love for learning. Honestly I think my time at Cambridge was as enjoyable and successful as it was (in that order!) because I just loved learning about computer science, and I was incredibly grateful to be afforded the opportunity to study there. I’m not sure how to give “advice” on cultivating a “love for learning”, I feel like maybe this is more intrinsic.
I’ll tackle the other two points in turn.
I’ll also share my experience in boxes like this one.
Computer science is a big field. There’s no way you’ll know everything from machine learning to operating systems. I didn’t know how a CPU worked until I got to my Operating Systems course at university. And you don’t have to have been programming from a young age - I chose to study Computer Science 6 months before the UCAS application deadline.
Instead pick one subfield that you find really interesting (maybe you saw something on the news) and just run with your curiosity. Depth over breadth.
When I was applying in 2016, Deepmind AlphaGo had just beaten the best human player in the world at the game of Go - a huge AI achievement that was broadcast all over the news. I decided to go read more about AI and machine learning and complete an online machine learning course on Coursera.
My biggest piece of advice (what I wish I’d have done more of) is to try and get in the habit of doing rather than just consuming. Even a toy project is a lot more interesting to talk about at interview than having read tens of articles.
I cold-emailed my local university to ask if I could do a Nuffield Research placement working in the computer vision laboratory. I think this probably took up the bulk of my personal statement, along with a couple of toy machine learning projects I wrote after the placement.
Some possible ideas to get you started:
- If you’re interested in websites, make your own and use it as a testbed to tinker on. That’s what I’ve been doing on my website to this day!
- Learning a particular programming language? Maybe try to understand how the computer takes the code you’ve written and executes it on your computer. (Hint: search for the term “compiler”)
- Maybe you can read a book like the New Turing Omnibus. Then pick one of the topics in that book and see where it leads you.
- Head to Isaac Computer Science or Brilliant.org for two excellent computer science curriculums!
Cambridge have the A Level requirements listed on their site. Beyond that, there’s nothing “required”, although doing as well on your GCSEs and A Levels certainly helps.
Beyond grades, I would whole-heartedly recommend UKMT Maths Challenges and Olympiads. I think they’re super useful in teaching you to solve problems, and the UKMT organisation has a whole list of books they publish like the “Problem Solver’s Handbook” that are really helpful. I think if you’re able to get up to British Maths Olympiad Round 1 level, then you should be really well prepared for the maths parts of the interviews and admissions tests.
Take this as a rough guideline not a requirement! It’s just what I found in my experience :) I think my experience solving UKMT Olympiad problems helped even during my maths courses in the first year of my degree, since they’d taught me how to construct a mathematical “proof”.
It doesn’t have to be strictly related to Computer Science either, for example I took part in (and out of all subjects ended up doing best in) the C3L6 Chemistry Challenge and the Chemistry Olympiad.
One final caveat to put things in perspective.
Cambridge’s course is more theoretical than most. What this means that you’ll spend a lot of time learning concepts and fundamentals during your degree, and perhaps less time on ‘real-world’ courses. For example, we don’t have courses on “Web development” and “Android App development”, which might be more practical skills you can apply in industry. Cambridge’s philosophy is that “concepts” stand the test of time better, whereas a technology like Android might become obsolete in the future and thus not so useful to learn.
This kind of teaching suited me: I found it a good foundation that helps me learn new technologies much faster, but it might not necessarily be suited to how you learn and you might disagree - maybe you want to learn Android or a specific web framework. In which case, there are other universities that have those topics in their course.
And Cambridge is not the final destination, if you’re looking to work in software engineering, the destination is the job you’ll get after you graduate.
At the time of writing, I work for Facebook, and I can tell you that tech companies value learning specific programming languages and technologies when you apply for roles. I’ve had to augment my studies at Cambridge with personal side projects and internships to pick up these valuable technologies, but on the flipside the degree has meant I have the right mental models to learn, say, a new programming language much faster. I’m working on the iOS Messenger app having never written my own iOS app, but 2 weeks in I think I’ve got a decent enough grip to contribute.
Secondly, whilst going to a good university helps your chances because you have exposure to careers fairs and the like, ultimately companies will care more about what you’ve done during your degree. This has two implications. First, Cambridge isn’t a golden ticket - when I applied for my first internship, I was rejected from 40-odd places, because I didn’t have experience (and a fancy Cambridge degree wasn’t going to make up for it). conversely, I’ve met many software engineers at Facebook from other universities like Southampton and Warwick to name a couple of the top of my head.
With that I wish you the very best of luck with your applications! I’m incredibly grateful Cambridge took a chance on me when I applied all those years ago - I’m certainly not overstating when I say that it was life-changing for me.