Decision Help: Oxford fully-funded DPhil in Computer Science vs Columbia MSc in Computer Science

Dear all,

I got admitted into these two programs as follows:

  1. Oxford University fully-funded DPhil in Computer Science. The program primarily involves Formal Verification of hardware and software system using various tools (machine learning, etc.).

  2. Columbia University MSc in Computer Science (machine learning track). This program is self-funded and will cost around 100,000USD in total. BTW, money is not too big an issue for me.

My final goal is to work in a leading tech company (Google, Facebook, Microsoft, etc.) in the US, simply because they pay much more than companies in the UK do. I am from China, so Visa might be taken into account.

The biggest advantages of Oxford are first, a Ph.D. directly; second, fully-funded. However, it is in the field of formal verification. I am super okay with the machine learning element. However, I am not sure if I will have a good time working on the formal verification part and I am not sure about the prospect of this field as in whether it will help me get a well-paid job or a good research position in a company. If I choose this program, my plan is to either do a post-doctor in the USA and then work for a company or find a job in the USA right after Ph.D.

As for Columbia, I can take advantage of this master’s to strengthen my background in machine learning and computer vision and I might have a chance to stay at Columbia to do a Ph.D. with one of the “big names” in machine learning or computer vision. However, it will also be very hard because my current background in this field is very barren and there are a lot of top students from all over the world to compete for the very few Ph.D. positions each year. To be honest, a Ph.D. in other good US computer science schools is also fine but just not sure about how hard it is to apply after a master’s at Columbia and if it is worth it. Even though I fail to get a PhD, it will still be easy for me to find a job with a master’s from Columbia.

Any input on this issue will be highly appreciated. Thanks!

Best regards,
Jason

Employers would love someone with either degree. The Ph.D. would probably open up some academic jobs in the US that you wouldn’t have access to with just a Masters, but if your objective is just to find a job with companies in the US like the ones you mentioned, a Masters would be fine.

I don’t have any direct experience applying for a Ph.D. program, but I can’t imagine it would be that hard to get accepted into a Ph.D. program for CS if you have a masters from Columbia. There’s always talk about how we need more CS Ph.D.s.

I should say that I don’t see companies doing much, if anything, to formally verify software systems. I believe hardware companies make more use of formal verification systems. There was a push back in the late 80s-early 90s to formally verify software, but it never went anywhere because it was so hard to bridge the gap between theory and practice. I went to some talks on it, and my eyes would glaze over in about 2 minutes. Still, if you can somehow demonstrate to big software companies that formal verification of software can be made to work, they’d be kicking down your door to get you.

A fully funded PhD from the most prestigous university in the world? I am amazed you are even asking. You are clearly exceptional and will do well wherever you go, but given that it’s Oxford, and Oxford itself is a lovely city, only an hour by train to London, which is an amazing city, with easy access to beautiful countryside, I almost can’t understand why you are even considering Columbia. You should consider where you will spend quite a few years of your life living, and there is simply no question that Oxford will offer a better quality of life.

No brainer…Oxford. Mic drop. :smiley:

Your opinion on this field is quite insightful. So what do you think of the job prospect of an ordinary PhD graduate in formal verification - by “ordinary”, I mean he does not get amazing and groundbreaking results during his PhD.

One word: Oxford.

You could teach CS in a university. I’d think someone with a Ph.D. in CS from Oxford would have a lot of options in that respect.

If your goal is to work for a software company, you could easily get a job, but you probably could have gotten the same job with a masters from Columbia.

Like I mentioned before, formal verification is something that’s rarely, if ever, done by software companies. So unless you did something groundbreaking, you’d be someone with impressive academic credentials, but with specialized skills in verification that software companies wouldn’t know what to do with.

If you’re interested in hardware, that’s a situation I’m not really qualified to comment on.

I don’t think it’s such a no-brainer, although I would still lean Oxford simply because of the cost.

The biggest advantage to a master’s degree (for someone with non-academic career goals) is the lower time commitment. American PhDs take 5-6 years on average, whereas a master’s usually takes 1-2. So that’s an additional 4-5 years of work experience that you can get if you get an MS instead, with all the requisite promotions and career advancement that comes along with that. You can get excellent software jobs in the tech industry with an MS; a PhD is unnecessary for general job searching, although there are some jobs for which it is an asset.

Therefore, a lot of times it’s worth it to pay for the MS and get straight into the workforce rather than getting the PhD. One, because of the shorter time frame; two, because of the different training and rewards. PhD programs (particularly ones in the U.S.) focus on research careers and really push academia and few other options; they don’t have the same kind of career development like you might get in an MS program.

However, UK PhDs take a little less time - 3-4 years, since they are all research and no coursework. So there’s not as much a bigger sacrifice of time.

There’s also the not-insignificant issue of focus. Machine learning is in demand across the software industry. Based upon comments from those more knowledgeable than me, formal verification isn’t. Of course, that may or may not matter so much - for my PhD I specialized in something completely different than what I currently do. It’s also possible that formal verification may impart some skills and techniques that end up being really useful in some applied area of software (e.g., I found that my interviewing and ethnography skills came in really useful in my current job, despite it not appearing that way from the outside).

On the other hand, you don’t sound very interested in the topic. And if you are not interested, the PhD will be pretty miserable.

I also don’t think there’s “no question” that Oxford will offer a better quality of life. I got my PhD at Columbia. Living in New York for 6 years was simply amazing. I have no doubt that Oxford and London are amazing as well - but one’s not necessarily objectively better than the other. They both would offer an excellent experience. (Also, being an hour away from a city is not the same as living in a city. You need to be okay with living in OXFORD, not living near London. By all accounts, Oxford is a really lovely place.)

If you know you want a PhD, or at least are reasonably sure - Oxford may be the right choice here.
If you are at least somewhat interested in formal verification and are looking forward to the prospect of doing research in the field - I’d also go Oxford.
If you’re biting at the bit to get into the work world, and not really interested in doing research - Columbia.
If the idea of doing formal verification research for 3-4+ years bores you to tears - Columbia.

Also, if you want to go work in the corporate world post-PhD, I’d skip the postdoc completely.

No one has written yet about potential visa issues. That is something you do need to investigate carefully. You also need to remember that visa policies can change at any time.

Thanks for the insightful opinion. I would say that I am interested in the field which can let me make the most money. Whatever the field is, as long as I am convinced that it has a bright prospect, I am motivated and can work very hard in it. Also, do you take into account the possibility of me doing a Ph.D. in another field after a master’s from Columbia?

You can make a lot of money in either field, but if you are interested primarily in making a lot of money, I’d skip the PhD. It’s not that you can’t make a lot of money with the PhD - you can - but doctoral programs are not really calibrated towards those kinds of rewards.