Pursuing a computer science masters without a CS undergraduate degree. Realistic?

Hi everyone,
I’ll be graduating in the spring of next year with a degree in Information Technology. The program is geared mostly towards the practical application of technology in organizational settings (networking, database management, security, system analysis etc) We do a bit of programming too, but nothing that can be comparable with a CS program. We do a little bit of JAVA, some PHP, the intro in python, and some stuff with statistical modeling in R.

That being said, do you think its within the realm of possibilities for an IT major to pursue a masters in Computer Science? I’ve read that many masters programs tend to focus more on the professional uses of coding and less on theory. Also, many universities offer bridge programs that offer 4 or 5 CS undergrad CS courses to prepare students for the program.

I understand that many CS majors don’t see a point in going to grad school in CS because they’ve already learned so much in undergrad, but an IT major is a somewhat underwhelming degree and a CS masters would most likely boost career opportunities. So, what do you all think? Is this realistic or a pipe dream?

There are some professional CS Master’s programs, where you don’t write a thesis, just take classes, that take in people with 0 CS knowledge. IMO, these are just major cash cows and should be avoided. These programs don’t do much for your job prospects. Don’t be fooled by the fact that these are offered at schools like Penn, Illinois, USC, etc.

Some programs will admit you with course deficiencies and require you to take all the necessary classes within a certain amount of time. Most programs will just reject you.

At an absolute minimum, you need first year calculus, discrete math, programming, data structures, algorithms, and automata theory. I recommend squeezing in some of these classes before graduating if you can. If you’re tied down after graduation, you can likely take these classes as a non-degree student at your local state university.

The next classes that aren’t absolutely essential everywhere, but are at many places, are Computer Organization/Systems/Architecture and Operating Systems. Computer Organization and OS should be offered at your local state school too, but if you’re trying to take them in the summer, good luck. Only a handful of schools will offer them, but you could just go to another state during the summer, wherever you can find a place that offers them.

Other classes that could be useful to take are Programming Languages/Compilers, Software Engineering, Networks, Cryptography.

Is your IT degree a Bachelor’s or Associate degree? If it’s an Associate degree, you’ll likely need to complete a BS first.

Thank you for your detailed and informative response and by the way, I will be receiving a bachelors in IT.

I’ve stumbled across many of those cash cow online CS programs and something definitely seemed off about them. It seems as though a CS masters from any respected program would most likely be a long shot. I currently have 1st year calc and programming but I’d have to take data structures, algorithms, operating systems etc.

On the other hand, there is also the option of staying in IT. Do you see any promise with the IT bachelors alone, or do you think the extra work in CS would ultimately be worth it? Masters programs in IT definitely seem useless especially since much of that could be substituted with certifications/professional experience.

Once again, thank you for the assistance.

I am not so sure about that last point. I know that one of my friends took a Master of Information Technology Management at my university and he thought it was valuable in getting his next job.

I don’t know anything about IT, but if you can squeeze in discrete math, data structures, algorithms, and automata theory (even if 1 or 2 of them come the summer after graduation), you may have a shot at some top 50, or at least top 75, schools, depending on your LORs, SOP, GPA, GRE, etc. Some schools also offer spring admission.

That said, once you start taking data structures, algorithms, and/or Computer Systems, you’ll start to get an idea of whether you’re really interested in CS or not.

It is definitely possible, so long as you have the minimum requirements like everyone has been saying.

And also, this is from my own experience: It may also be a good idea to try picking up a few more languages on your own and experimenting with your own programs. There are a lot of self-help websites available online that are free and teach some of the basics. You can even try a hand at making your own basic android or iOS application for fun. Think of this as something you can add to your CV/portfolio. :wink:

This will help you decide if you are interested in pursuing this career and whether or not you enjoy it. It’s one thing to take a class on a language, it’s a whole other ballgame to tackle a language on your own. This is the best way to wrap your head around the entire process. This may also help show to grad schools that you are passionate about programming and you have more to offer than the basic undergrad courses.

(I am former undergrad EE hired as a SW engineer and doing a masters in CS)

True, but be careful not to learn so many languages so as to master none of them!

If you want to learn languages, Lynda is a good website to quickly get a handle on many languages. LearnVisualStudio is another good site. These websites do cost money, but not too much (for me anyway), and it’s much quicker for me to watch a few hours of video than to buy a book on C++ or C# or whatever and spend countless hours reading the book trying to absorb the particular details while not getting bored out of my mind on the stuff that’s the same in every other language.

I only get bored out of my mind for a few minutes at a time while watching the videos :disagree: