Best Grad Program For a Computer Science Major?
ryanleary writes "I am currently a junior computer science major at a relatively competitive university. I intend to remain here for some graduate work, and I would like to get a master's degree. What would be a good field to study? An MS in computer science appears to be highly theoretical, while an MS in IT seems more practical due to its breadth (covering some management, HCI, and design). What looks best on a resume, and where might I expect to make more money in the not-too-distant future? Computer Science, Information Technology, or something different altogether — perhaps an MBA?"
I think choosing the type of degree based on what looks best on your resume isn't the best way to go. Graduate school is a lot of work. If you pick something just because it looks good on a resume and not because you actually like it, I can't imagine you'd enjoy getting your masters.
I am currently a junior computer science major at a relatively competitive university. I intend to remain here for some graduate work ...
Ok, I'm not going to be able to tell you which degree to pursue but I am going to tell you that remaining at the same university you got your undergrad in is a mistake. I was once like you and my professor told me that it was a bad idea for me to remain at the same university for my masters. I didn't care, I wanted to be closer to my family and there wasn't another decent university around. I never got a good explanation why but due to some circumstances, I ended up moving and the result was my masters at a different university.
I am thankful this happened.
I now understand why it's better that you go to another university for your next degree and it has a little bit to do with what some people consider the most important aspect of college. I've oft heard that it's not what you learn at college, it's who you meet. And while I agreed with this about the bullshit degrees in college (like business, architecture, law, etc.) I had never considered it a matter of importance at all in computer science. But it is! Not because of this connection is hooking you up with this position here but more so because of the ideas that sometimes arise between two particular individuals or the new perspectives other people can put on how you see things--yes, even technical things like algorithms.
And so, by staying at the same university, you are wastefully throwing away a chance to work with, learn with and be with 100s of new talented people. If you stay, you most likely know the staff at your current university and will have everything settled but I urge you to consider throwing away that comfort zone and take a gamble at meeting new people with different ideas and concentrations. I think this helps both universities from becoming too stagnant and focusing on the same damn thing year after year. I don't know, I'm no longer in academia but think about it.
An MS in computer science appears to be highly theoretical ...
It doesn't have to be that way. I was given a set of courses to choose from (as long as I satisfied breadth and depth requirements) and I think there were quite a few practically useful classes I could take--even software business classes. At least at my university it wasn't highly theoretical but an individual could certainly go that way. I knew what I wanted to do with my life: code. And it seems like everything I took in my grad classes was in some way useful. I'm given a large set of requirements and one of the first things I do is theorize with others about practical ways to implement it. Thankfully, you can usually spot the choke points and problem areas with designs and although patterns like proxy, caching, model-view-controller and polymorphism are theoretical concepts, they are often considered and analyzed without being implemented.
The point is, everything will look good on your resume as long as it's a masters. And I'm certain you could go down any of the paths you listed and still land a job doing something one of the others is geared towards.
The real question you should be asking is to yourself and it should be "What do I want to do with the rest of my life?" Once you answer that, you'll get a better idea of what masters program to take. The other degrees, probably also useful. I'm pretty biased though and wanted to be working in computer science for the rest of my life so it was an easy answer. Had I done IT I could probably still be where I am right now but I had no desire for that part of the field. Call your own shots.
My work here is dung.
Stop worrying about what's going to make you the most money and figure out what you enjoy. An MBA that hates his job is worthless. A computer scientist that isn't passionate about math and theory is worthless. An IT guy that isn't obsessed with all things tech will never be as good as the guy that is.
Figure out what you love doing and do that. If you really love it you'll be better at it. The best people in any field always make plenty of money.
As an aside- the last thing this world needs is more lawyers. The second to last thing this world needs is more MBA's.
Seriously, if your concern for going to grad school is solely to have something on your resume that looks better and gets you paid more, don't go. As a grad student in computer engineering, I can't stand the people who want to get a masters just because it makes them look better. And, if you do get a masters, don't bother getting it at a big name university, because that likely won't mean anything once you get it. The big name universities have the name because of the research they do. The research determines the ranking of their graduate program. If you plan on going just to get a degree, and not do any research, you'll end up shorting yourself of a better education elsewhere, and you'll waste the time of professors and other students who are actually interested in doing research. After graduating from one of these schools it won't really make you look much better either. You'll talk to companies and get in the door for having a big research school's name on your degree, and they'll ask you about what research you did, or ask for recommendations from faculty etc. You likely either won't know any faculty very well (as they're concerned with doing research, and not some masters student who only cares about making more money), or they'll have a low opinion of you for wasting space in their program (that space could have instead been used by someone interested in pursuing research).
Sorry if I sound really negative about this, but this is the truth of academia. The big name schools are concerned with research. That is why they have a big name, and that is what they will focus on to maintain their reputation. They often do not offer a better education, and in fact they are often less concerned with teaching than smaller lesser known schools. The professors just can't afford spending too much time teaching, because in the end (for getting tenure at least), research is what matters. In fact, at many of these schools, it is looked down upon if a junior faculty members wins a teaching award. The rest of the university assumes they're spending too much time on their teaching, and not enough on their research.
My recommendation is to talk to the faculty at your current university. See what they recommend, and be truthful about why you want to go to grad school. Slashdot is not the place to find out about this stuff, most people here have no clue. Also remember that as far as graduate programs at top schools go, it's not really that one school is better than another. In reality its that one school is better in one particular specialty area. The choice of which school is best for you depends much more heavily on what you plan on specializing in rather than the US News ranking. Employers know what schools specialize in, and base decisions on that. If you don't plan on specializing (as you don't seem to be concerned with research), the rankings immediately become relatively worthless. Talk to faculty that you know and trust. They can help you, but you have to show that you're worth spending time on. They likely have more important things to do, and don't want someone wasting their time.
phil
Actually, your attitude is part of the problem. We need more tech people moving into management. How else do we get the businesses, the community, and the world to understand and properly utilize technology without providing good technology leadership?
I've been working in this business for 20+ years and I'm considering an MBA focussed on managing tech. Better income? Probably (I hope). A chance to clean up the mistakes of the Neanderthals you speak of? Damn right!
I hope this comment is well received... I could have moderated instead!
Persecutors will be violated!
I agree with almost everything in the parent post word for word, but with one major exception. Do NOT, under any circumstance, neglect your GPA. When you are applying for jobs, the first people you encounter are HR types that don't know the subtle details of published research. I.e., they wouldn't understand the difference between being co-author of a paper that appears in Science versus one that appears in some third-rate workshop.
What many of these HR types look at as a first criterion for consideration is your GPA. When they run their filter on GPAs, a 2.3 will get you disqualified before they ever see your list of 15 publications. Many recruiters (though not all) will, by corporate policy, automatically discard the resume of any student whose GPA is below a 3.5 without a moment's hesitation. Because, chances are, they will probably be able to find a student with a 3.5+ GPA and a publication or two.
So, yes, do research. Show your initiative. Work on interesting and innovative projects. But do not let your GPA go down the toilet in the process.