On the Differences Between MIS/CIS/CS Degrees?
Dark Ninja asks:
"I find that after having a professional IT job (C++ programmer/DBA)
for four+ years, not having a degree is a hindrance to finding a job. So with this in mind, I'm planning on attending
college soon, but I want to know the difference between an Management
Information System, Computer Information System, and Computer Science
degrees? Better yet, which ones do you suggest (ie. to allow
advancement, which allows for what jobs, etc)?"
it really doesn't matter, honestly, what you major in college...
:-)
the fact is, once you get that paper... you could say you majored in History, Art, Literature, etc... but if you have certs and so forth... expect to get hired...
i have a few friends who work for big companies (IBM, Lotus, Computer Associates) and they all never majored in CS/CIS/MIS... but they still landed the job, just because they went to college and they had certs...
another option you might want to consider, is consulting... i consult... and i don't have a college degree... and get this... all the clients who i have worked/am working for... have never asked me for my college degree nor resume (even though i do have a resume)...
the other good thing about consulting is, that once you build up your client base... you'll be working off referrals too... so that's another good thing... only bad thing about consulting is that you'll get no benefits... and no insurance
but if you're married and your wife has medical insurance for the family.. and so forth.. that shouldn't be a problem
"The ones who dont do anything are always the ones who try to pull you down" -- Henry Rollins
Also, a college degree can open up alot more opportunities than you will have just with your 5 years experience. It's direct proof that you completed a certain course of study with at least a C in most cases, and shows that you are capable of devoting yourself to something worthwhile. IMHO it means alot more than being able to hold a job for 5 years, whose title may or may not have much bearing on what you did.
If an employer sees 'Bachelor's Degree in Computer Science from XYZ University' they know certain things that you should know, and they shouldn't have to worry about you not knowing them.
The best possible way to go is a college degree coupled with some sort of experience or research involvement.
What?
I agree and would just like to amplify that really, it is have a degree, ANY degree that matters. If you find your interest is in something totally different, music, physics, whatever, then go for that. The important thing is to show employers you have what it takes to get a college education. I think you're much better off getting a degree in a feild that interests you (and you are therefore more likely to complete) than getting one that you feel is marketable.
Now of course there are fields where the type of degree matters much, but programming and IT aren't two of them. For example, I work as a Network Admin. The people I work in my room (there are 8 of us) have degrees in MIS, music education, CS, MCB (biology), electrical engineering, and one person has no degree.
You are right to get a degree, but get one that interests you and don't worry too much about what it's in. Having it is enough.
when CS people can't figure out amortization schedules and have a hard time mixing financal theory with cost-based accounting systems. sorry, but it's true.
don't buy into the CS / MIS us vs them crap, but rather look for a more generalized answer:
lots of MIS programs will vary. mine allowed us 8 hours (2 semesters of 4 hour classes) of C++ and VC++ MFC programming. I added in some OO programming which taught language agnostic principles. plus there was another 8 hours worth of DB stuff - SPs, tables, schemas, etc. on top of all that, we had several "capstone" classes which matched full semester group projects with business area focus. we had several companies bring in real world business issues which we then solved using our class knowledge (and the companies got a free consulting solution if they decided to use our work!)
i took Cal I and B-Cal - no more, no less. the CIS people i know from my university took Cal I-III and often some other elective mathematical classes.
the real questions is what will you envision yourself working on in 5 years? if you plan on doing business level programming, then the MIS degree is going to give you the requiste background in accounting, finance, and economics to survive. i found employeers were chomping at the bit b/c i had these skills - of course, i interviewed with (and work for) Fortune 300 companies.
we have some CS people at my company - these guys are wicked smart and several of them have military or NASA backgrounds. they do the low level, to the metal programming that our apps need. these guys are not building our accounting modules. that's not their strength. they might be able to - it's just not what they are working on.
with either degree you are not just purchasing a job - you are showing your employeer an ability to learn. my father graduated one of the top engineering schools in 1969. he did chemical engineering for about 3 years and then did all business management stuff for the next 27. his company hired him b/c his degree showed he could think and learn. both a CS and MIS degree from a well respected university will get you this.
good luck and have fun! i miss my college profs about once a month!
/* Half alive and half dead too, work is for suckers and the sucker is you. - "Half-life" by Local H*/
The worst degree is the one you don't finish. Repeat that a few times. I would recomend going and talking to all the various departments at your school and trying to figure out you want to go. No matter what you major in learn to write English in addition to code. Being able to write a spec document or a set of procedures may well get you a job that simply being able to code will not.
I'm majoring in Physics at Brandeis, but then again I'm not your standard undergrad, I'm 28, I took 7 years off from school to work, but when I lost my job last fall I decided to go back and fisish.
Erlang Developer and podcaster
Well, I help build these programs, so I too am qualified to answer. There's a lot of variability of these programs.
CS can range from being a coder-mill to a real theory-based science program.
CE can range from being almost exclusively EE applied to computers to being coding + some hardware.
CSE (computer science engineering) and EE/CS tend to with some reliability balance hardware and software.
SE (software engineering) focuses on the application of computer science to building software.
Most day-to-day programmers that I've worked with aren't spending a lot of time designing algorithms or thinking out big-O problems. Instead, they spend most of their time working with a team of programmers trying not to step on one another.
I'd say most programmers would actually benefit from a Software Engineering background, then a CS background, then a CSE, then a CE background. As for MIS, CIS, I'd advise getting one of the above degrees and having your employer send you for an MBA with a computing focus.
When shopping for schools, ask about all the programs they offer and have them compare them. CS at one school may be nearly identical to CE at another.
Personally, I think all the programs are cool...
Having run through the university mill for several years (and survived), and being on the hiring end of the fence, I can say that a Bachelors in anything is pretty much useless in terms of proving ability to do anything useful. Compared to graduate school, undergrad is really a joke. Sitting in a lecture hall "absorbing" information is not the best way to learn. My advisor told me that in grad school you have to teach yourself. This unfortunately was true more often than not. What they don't tell you, though, is that the undergraduate funds pay for the graduate programs, which the professors use as slave (unpaid) labor by which they work their grants. Make no mistake: College is a business.
...but I digress...
When I sift through resumes, I don't even look at the person's education or even certifications. The only thing that I care about is whether the person can do the job to the quality level I want. This is proved in the interview. Experience level -- what gets me to look at you at all -- is determined by previous jobs, but I don't give a lot of weight, because most people inflate anyway.
In my interviews, people are expected to be articulate, solve real problems and demonstrate their coding ability. If they can't do that, then I could care less where they went to school. One last tidbit: the company I currently work for cares a great deal about degrees. It is a very old company, so they don't understand computers but they know they need them; their attitude is that they won't hire someone who doesn't have a degree, even though they're perfectly happy having degree-less contractors do all the work. Go figure.
Yeah, right.
Having attended three different academic institutions over the past 24 years, and receiving both graduate and undergraduate degrees in electrical and computer engineering and computer science, I can say some things about what I've observed. One way schools can be divided is by the emphasis they place on research vs. teaching. A computer science degree from a research oriented school will tend to focus more on the science part of CS, such as theory, operating systems, compilers, etc. because they are interested in generating more graduate students to do research. A CS degree from a teaching oriented school will tend to focus more on applied subjects like programming, databases, software design, etc. because they are mostly turning out people who will immediately be looking for outside jobs. Degrees from either kind of school are fine for getting a job afterwards, since many of the same core subjects will be taught virtually everywhere and many employers won't really know the difference. However, if you plan on applying to graduate schools later for a more advanced degree, they will know which category your school fits in.
One way to divide programs within schools is by which college or major division runs the program. Some schools have CS programs originating from an engineering college or division, while others tie them into an arts and science college or division. At some schools, the CS programs have had their roots in the math department. Programs with engineering roots will generally require the student to spend more time fulfilling engineering-specific requirements such as calculus, circuit theory, physics, etc. This often doesn't leave much time for other electives. Programs with roots in arts and science will have their own sets of required courses, which may allow time for taking more business oriented electives along the way.
Computer engineering (CompE) degrees are often a hybrid program between a traditional CS program and an electrical engineering (EE) program. Whether you get more or less software vs. hardware in these programs depends a lot on which department has the most influence at a particular school. Sometimes the program is run as a joint one between two different departments, and their quality depends a lot on the amount of cooperation that exists between them. Be careful to check with other people who have gone through a particular CompE program to see if they believe the program was successful or not in bridging the two disciplines and what approach was taken.
The general rule to take from all of this is that there are no general rules differentiating the kinds of programs at different schools for CS and CompE programs. Each school is different, and you need to investigate each one thoroughly to see if going there will meet your needs.