jump to navigation

Who (Doesn’t) Recruit the Best Computer Science graduates? March 26, 2008

Posted by Imran Ghory in Computer Science, recruitment.

While doing some research on how software companies recruit new graduates I came up with a strategy to break firms into separate categories depending on which universities they targeted for recruitment. The results of this research threw up an interesting anomaly – while in general it followed the pattern one might expect (“high-prestige” technical firms going after the best unis, defence and consultancy firms after the next tier, misc business apps the next tier, and so on).

However there was one notable exception to this pattern. Microsoft.

Despite the firms bad reputation among “geeks” Microsoft is still a prestigious technical firm to work for, one which has a number of notable researchers and developers in a number of fields. Yet when it comes to recruiting students Microsoft seems to have given up believing in itself and is now targeting “average” computer science students rather than the best and the brightest.

But before I go further I’d like to explain my methodology. I built up a database recording which universities are targeted by software companies and used the The Times League Table for Computer Science as a benchmark to rank computer science departments.

The actual information about where firms hire most of their graduates is unfortunately not available to the public, however we do have a good proxy measures. We can see the universities that firms target (i.e universities where they run recruitment talks, events, etc.), which due to these activities very nature is public information. Using this information we can cluster firms together based upon the ranks of the universities they target.

To show by example:

Here we show the universities target by three “prestigious” technical firms (Microsoft, Google and Data Connection).

Google is obviously a “hot” destination for Computer Science graduates and is well known for wanting to hire the smartest people. Data Connection is a telecoms software firm with a very strong reputation in the UK for software development excellence, they’re frequently ranked as one of the most desirable firms to work for in the UK.

The average ranking for a Computer Science department targeted by Google is 5.5, for Data Connection a slightly higher 9.6. For Microsoft it’s 36.2. The difference is staggering.

Google and Data Connection are targeting the top-tier of universities, Microsoft are targeting third/fourth/fifth tier unis, it’s as if they’ve given up on getting the best and have settled for the “average” in-order to avoid having to compete at the high-end.

That’s not to say Microsoft don’t recruit students from the top-tier, but I’d be willing to bet they recruit a lot more from the middling unis. And it’s not to say that there aren’t good computer science students at the middling universities, there are. But there are a lot more (possibly a majority of) “top” computer science students in the top-tier than the middle-tiers.

There was a time not that long ago when a number of very smart people came through the graduate recruitment of Microsoft, many of them are prominent in the field today, but it seems now that Microsoft has given up trying to hire the best and develop them into superstars. And I think that’s a shame for both Microsoft and the industry as a whole.

[Incidently if any of the Google recruitment team read this – please sort out your recruitment events calendar – it’s incredibly poorly designed and nearly impossible to use]


How to pick a good Computer Science degree May 16, 2007

Posted by Imran Ghory in Computer Science, Software development.

I recently came across a scathing article by a former Computer Science professor from the University of Leeds attacking his former department for “dumbing down” their curriculum. In the discussion on reddit that followed the question was raised about which universities still have good compsci departments.

I’d thought I’d try to answer that indirectly by coming up with a set of criteria any prospective student could use to judge for themselves how good an undergraduate compsci course is.

So without further ado the criteria:

  • How difficult are the modules/subjects offered ? – do they include math heavy topics such as cryptography, complexity, quantum computing, speech processing, etc. Do they include theoretical topics such as information and concurrency theory. Are the programming courses in depth, do they cover functional programming and language engineering or are they just “what is a loop” lectures.
  • Are there specialist units/subjects taught by researchers in that area ? – If a uni is teaching unique courses that are only available at a handful of universities around the world due to the specialisms then that’s probably a good sign. It means lecturers are driving the curriculum and you’re likely to have lecturers who are genuinely passionate about what they teach.
  • What’re the average entry grades for students ? – this matters for a number of reasons, not least because having intelligent motivated students means that lecturers won’t have to dumb down their material. Lecturers have to make sure they’re teaching at a level right for their students. If you’re an A* pupil in a class of D students then you’re going to feel unchallenged as the work will be aimed at a level far below you.
  • Who recruits at the university ? – Large tech companies tend to have a very good idea which universities are producing the best compsci graduates based upon the quality of those graduates they’ve hired. So look at a university’s website and see what companies regularly recruit there. Most big technology firms, investment banks, consultancies, etc. have campus calenders on their websites showing where they recruit.
  • What do students do for final year projects ? – if the majority are doing “e-commerce websites” then it’s probably time to run away. If the majority are doing “hard-core” innovative and interesting computer science projects across a range of areas then it’s probably a good sign.

Does anyone have any other suggestions for good criteria – can we establish the equivalent of The Joel Test for universities ?