Jump to content

Recommended Posts

Posted (edited)

First off, I apologize if I'm asking obvious questions here that get asked a million times. Didn't see a sticky in this subforum with common questions. I'm considering getting an M.S. in CS, and I have a few questions. My background is as follows:

-B.S. in Math a few years back, around 3.7 GPA (3.5 GPA in CS courses... or 3.6 if you count discrete math as CS)
-My GRE score was 800 Math, 550 verbal, 4.5 writing. This is apparently equivalent to 166 Math, 156 verbal on the new format.
-730 on the Math subject GRE and 20 on the Putnam
-I was in Math grad school for a Ph.D., but I became miserable and quit after a couple years
-One Math REU with a publication (the REU was pretty computational and involved some programming)
-Experience with Java, C, Assembly. Have a book on C++ and a book on Java Android programming I'm hoping to start getting through pretty soon

I'm trying to get a job as a Software Engineer, but it's been tough for a variety of reasons and I'm considering getting an M.S. for this reason. I've taken programming classes, data structures, algorithms, computer systems, plus tons of math (including discrete math, cryptography, linear algebra, etc.) I'd prefer to apply directly to an M.S. program than to try my luck with Ph.D. programs and then quit once I got the M.S.

Anyway, here are my questions (maybe I'll add something later if I forget anything):

(1) If listing relevant coursework on a resume, what math courses are relevant besides discrete math and maybe linear algebra or cryptography?

(2) From a cursory look at different programs' websites, it appears I'll need to take a couple pre-req courses I haven't taken before. Do programs tend to say "you're admitted, but you need to take these courses," or is it unwise to even apply before taking the courses?

(3) Is it worth putting a decent Math GRE Subject Test score on a resume? What about Putnam score?

(4) How high of a school could I reasonably aim for? I know I'm not going to get into any top 20 schools, but should I look for programs ranked around 40-70?

(5) Do you need to have a particular interest/have a professor in mind, or do you just apply and then figure that stuff out later like in Math?

(6) I know programs will care about projects you've done, but would they care about things like Project Euler?

(7) Is it a problem if all 3 letter-writters are Math professors? I have one CS professor I took two classes with and got As, but he's pretty terrible about responding to emails, so it could be hard to contact him. I know one other CS professor who would respond quickly I'm sure, but I only got a B+ in his class.

 

Thanks in advance for the help.

 

Edit: Actually, the new GRE sections are apparently out of 170, so my Math score should be 170 since I got every question right, not sure why the ETS site says the conversion is 166. Probably doesn't matter though.

Edited by rarog
Posted

I could take classes at the local uni in the fall on Operating Systems, Computer Architecture, Automata Theory. Not sure if Computer Architecture would be essentially the same thing as the Computer Systems class I took before. Compilers and AI classes have pre-reqs that I haven't taken. Could also take a Database Systems class, but that's not one of the classes I saw as a basic pre-req for admissions.

 

If I don't get a job this summer, I suppose I could take classes in the fall on OS and Automata Theory, apply for spring admissions in some places, and if I don't get in, take Compiler Design and something else in the spring while applying for fall admissions.

Posted

You have to check with the programs that interest you which courses are required to apply and take those. But you already seem to have a few basics so that is good

 

Considering you have a solid background in maths and good GRE scores your chances aren't bad. I would at least try to apply for one or two top20 schools, if I were you.

 

Maybe you can even use your Ph.D. experience in your application. Do you have publications? Or maybe your old adviser can write you a LoR? You have to mention it in your application anyways so why not try to show that you learned something during that time even though you quit?

Posted (edited)

The only publication I have was from my REU (undergrad). I was only in the program long enough to take classes, didn't advance far enough to do research. Too bad I'll have to talk about it... things were alright at first, but my motivation and grad GPA went south the last year there. I suppose I could talk about how I turned things around by taking courses at my local uni and doing well, and maybe even working on a couple personal programming projects or Project Euler stuff.

To be honest, I was a little discouraged when applying to grad schools the last time around. Granted, it was for Ph.D. programs, and maybe math is more competitive than other fields. But most of the schools I applied to were ranked around 10-30, and out of about 10 schools, I only got into 1, and that was after being waitlisted past 4/15. That, and my lousy grad school experience, makes me doubt that I'd get in to a top school. But maybe if it's a self-funded Master's, they wouldn't care as much.

Edited by rarog
Posted

My academic background is somewhat similar to what you outlined. I started out in math.. I even left the program after a few years and went back for a masters in CS. I'm currently a software engineer.

 

Anyway, in response to your questions:

 

(1)

Do you happen to have any experience with statistics? In my math programs, statistics was considered to be "dirty", but from a CS point of view, it's one of the only mathematical subjects that is universally useful.

(2)
I don't think it's uncommon to be admitted with deficiencies. It's good for CS programs to admit people from non-CS backgrounds. You will need some fundamental knowledge that you wouldn't necessarily be exposed to in graduate courses. This isn't a reason to avoid applying.

(3)

Your GRE scores are old enough that you should probably retake it. For that reason, you should probably avoid listing the math GRE. I would also avoid listing your Putnam score. Many CS people won't know what that is, and even if you do know what it is, a 20 ranges anywhere between, "Nice score!" and "Holy crap, REALLY!?"

I don't feel very strongly about my recommendations on this point.

(4)
I can only speculate about how selective of a school you can aim for. For "reasons" I ended up doing my MS at a university that has such a weak CS program that it's a minor miracle that it's accredited. I think you'll run into a chicken and egg problem on this one, however. It sounds like you're considering a CS program because you need the CS academic background to land a reasonable software engineering position. Before you can land a worthwhile PhD program, you'll need to demonstrate that you're a badass in CS.

(5)

You can do it either way, I believe, but you should at least know enough about the field that you can identify the areas that you find exciting and the areas that you very much don't. You should have passions, and after leaving a math program, you'll need to convince some professor that you've found your passion in CS.

 

(6)

Ah, yes, Project Euler. I love that site! However, I wouldn't mention it specifically on an applications. However, if you have a github/bitbucket account, and you happen to have your Project Euler solutions visible in one of your repositories, then that will be impressive enough.

(7)
If all of your recommendation letters are from math professors, then that by itself is not a bad thing. If that CS professor doesn't really know you but the math professors do, then don't bother with the CS guy.


Good luck!

Posted

Thanks for the post.

 

Not much experience with stats. My research experience did involve statistics (and programming) though, so I'd try to emphasize that. I also passed the first actuarial exam a while back, which is on probability.

I'd hope I don't have to retake the GRE. From what I've seen so far, programs want scores within the past 5 years, and I will have taken the GRE 4 years before application season. They would find out about my Math GRE Subject test on the score report anyway. I would like to think quantitative programs don't care as long as you get near perfect score on the Math part and a respectable score on the verbal. In math programs, nobody cared about the regular GRE, except the actual university (not the department making decisions). Actually, I don't think I put GRE stuff on my resume last time, just entered the scores in the applications. (I also didn't list my Putnam score last time since the score came out after applications were due.)

I'm aware that there is a difference between what you learn in an academic environment and what you need to succeed as a software engineer. Having a Master's could open up opportunities certainly, but one reason I'm considering it is to "remove" the gap from my resume as I've been looking for a job for a while now. (Who knows, maybe just taking a couple classes this fall at the local college to bridge the gap in my CS knowledge before applying to schools could help enough with the resume gap to land a job.) Also, my degree right now is in Math, not CS, so that makes it tougher to get past HR. And the fact that most of my programming experience is years old makes it hard to convince hiring managers that I'm the best candidate. Learning everything I'd pick up from coursework certainly wouldn't hurt me with respect to job prospects. Additionally (perhaps most importantly), it would give me a couple years to build up my skills/portfolio. I'm not looking to go for a Ph.D.

I'm going to register for the Automata Theory class today. Unfortunately, the Operating Systems class is full. I'll see if I can get on a waitlist or get in an OS class at a different college nearby. The only other open class I see that I could take is an advanced algorithms class.

  • 8 months later...
Posted

Well I've decided to apply for M.S. programs this summer to start next spring, and in the fall to start next fall if I don't get in anywhere in round 1. I've taken:

Programming
Data Structures
Computer Organization
Algorithms
Automata Theory
Algorithms (grad)

I'm currently taking Networks (couldn't get into Operating Systems, so only 1 class).

Will be taking Operating Systems and Principles of Programming Languages this summer.

I'm looking ahead to the fall and assuming I can get into the classes, I'll take Software Engineering. If I can only take 2 classes, would it be better to take Compilers or Probability?

I was a Math major who took tons of math classes but never took Probability. I did pass the Probability actuarial exam, but my probability knowledge is a bit rusty, and it might look better to have probability on an official university transcript instead of trying to explain what the SOA Exams are. (I've also taken Cryptography, Linear Algebra, Differential Equations, differential geometry, discrete math, etc., pretty much any math class that might be beneficial for CS aside from Probability.)

I haven't seen Compiler courses as required for admissions at any schools I've looked at. Is there a lot of overlap with a typical Compilers course and Principles of Programming Languages course?

Is it important for admissions to have a portfolio of programming projects, or do they tend only to care about computer science coursework/research experience?

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

This website uses cookies to ensure you get the best experience on our website. See our Privacy Policy and Terms of Use