Question:
If you were planning on being a CS major, which specific areas would be wisest to go into(moneywise of course)
sdmflayne
2006-07-25 19:25:48 UTC
If you were planning on being a CS major, which specific areas would be wisest to go into(moneywise of course)
Eleven answers:
Ryan
2006-07-25 19:52:25 UTC
First off, let me say that if you're in the field for the money, you should take a long, hard look at what you're doing. When you get out of school, you're going to get into a job, and you're going to need to be working 50-80 hours a week. You're going to live in front of your boxes, whether it be at work or at home, and most of the people you see or know will be technical.



If that isn't what you want, if the potential to work on cool stuff and solve interesting problems doesn't outweigh the rest, maybe you should consider another field. The money doesn't matter if you hate your job and the lifestyle.



If CS is still what you want to do, and you're just looking for the high paying bits, realize that that changes year to year. Find something you do well, and enjoy doing, and go with that. Think about the money later.
ideadude
2006-07-25 20:03:54 UTC
Make sure you understand the difference between Computer Science and Computer Engineering. Most of what these folks are talking about aligns with a typical Computer Engineering background. You can still work as an engineer with a CS degree (I did as a consultant), but in general a CS degree will prepare you more for research and high-math-focuses careers.



Also, I've heard CS majors are on the decline these days (see references). So in 4 years, there may be more of a need than there is now. It's true that a lot of engineering is being outsourced, but IT jobs are growing at a comperable rate. Think about this: you will probably need a decent background in computers just to work your fridgerator in 10 years.



Also, don't worry about outsourcing. The way to beat that game is to move to an island with a low cost of living and become the enemy (so to speak).



If I were studying CS right now, I would focus on Artificial Intelligence. There are going to be a lot of breakthroughs in this area over the next few years. While most off-shored, out-sourced development is focused on business development, your AI background will prepare you for a segment of development that will be understaffed soon. Money is going to flow input this area very quickly once the business plans pan out.



Right now, a degree in CS concentrating in AI is mostly preparing you for a research position at a university (read: not a lot of money), I'd say in 4-8 years there will be a lot of money coming into the coffers of folks with a strong AI background.
godspeed1986
2006-07-25 19:42:33 UTC
Dude, don't listen to Curious George. He is disappointed because he is 30 and still lives at home. Just Kidding. There are very many opportunities for us techies and there will always be. Being a current Electronic Engineering student, I have researched the job availability in our occupation and it is very good. Networking has many opportunities but won't pay as much as say programming or computer design. I would look at the courses offered at the school your are planning attend. Try to take a course that offers a broad learning perspective. I personally attend Devry and I strongly recommend their courses. The courses are very versatile and offer great placement programs during and upon completion.
sandogtim
2006-07-25 19:31:37 UTC
If money is what you want then you should try the defense industry. Most postitions require a security clearance and background investigation but the pay rates are usually 10-20% higher than commercial. If you can, find an intern program and work with a contractor like Lockheed Martin, Northrop Grumman, Boeing, etc. on your summers off. You won't make much money but it will get your foot in the door.
knieveltech
2006-07-25 21:12:09 UTC
If your goal is cash don't waste your time with a CS degree. IT's for those of us that love the work despite how jacked up the industry is. Minor in CS. Get a business degree and go into management.
Curious George
2006-07-25 19:30:04 UTC
Dude what did I just tell you! Its a sinking ship, the market is soo over saturated with CS majors that no one can get any job worth a damn. Go talk to the guys at geek squad. How many of them have CS degrees and now they repair computers at best buy!!
anonymous
2006-07-25 19:59:04 UTC
Bad choice of major! If you are majoring in that area, you better move to another country! Chances of hiring is very low in the states! My friends have BS degree in CS, and now they are jobless! They are getting another degree! What a waste of time?



Many companies are hiring people from India and other countries for cheaper labor!
Joe Rockhead
2006-07-25 19:31:31 UTC
The demographics of the mainframe business indicate that there will be mass retirements in the next ten years. Mainframes are used by most of the Fortune 500 companies for everything from stock transactions to payroll (anything where getting the right result the first time is important).
lueglenn
2006-07-25 19:38:10 UTC
hmmm that's a crucial making decisions huh! well anyway if your planning to take a CS major, first you must be good in arithmetics or what we say math and also to logic, may the best areas to go to nowadays is in the fields of programming because not all of the CS major are born to be a programmer but if you intend to develop your skills in programmer is that many of the hot jobs now in INFORMATION AND COMMUNICATION TECHNOLOGY are all in programming... and if you also intend to make some futuristic ideas then go to the fields of robotics. but massive skills in physics, math and also programming are required in robotics..
dick_bee_bad
2006-07-25 19:28:24 UTC
Move to India and beat 'em at their own game.
draciron
2006-07-25 22:27:09 UTC
You had better love doing computers to get into the field. Unlike most fields to be compentent in what you do that means a cacooning of sorts. You have to emerse yourself in computers for a time. Live sleep and breath coding and basic networking. When you emerge you'll be an expert of sorts. Your degree will be nothing but a piece of paper that helps you get past HR. What they teach you in the courses is at best obsolete and usually very wrong. If you do not learn on your own you'll come out of college thinking you have knowledge and some really bad habits that will cause you untold grief in the real world.



IT in general is in deep trouble right now. The jobs are being exported rapidly to other countries. Programming jobs in particuler but tech support is devestated by the outsourcing, even some networking jobs and some DBA work has been outsourced. Of the jobs left in IT more and more are being filled by H1 visa folks since they'll work for half what American IT workers want. Many though will do 1/4th or less the work an American would do so it's not really helping biz but try to tell that to one of the bean counters.



So first you have your love of computers. While you are in college you try out the different specialites. You'll find affinity with one or more of them. The main ones being programming, networking, hardware (designing computer components, low level device programming, robotics) and DBA. There are sub specialties off each of these specialties. What you will do after you figure out what of these main branches you want to do most is spend most of your free time doing it. You'll have your own home network if networking is what you want to do and you'll be building bridging routers, seting up obscre protocols, learning network security inside and out and so on. If the code mines is where you want to go you'll write programs for everybody who'll give you a chance to write for them. If being a DBA is your thing you'll be learning Oracle, MySQL and SQL Server. You'll become an knowledgable in SQL as well as how to install and maintain these critters. The only way to do this is to work with the technologies you intend to learn. Books can help but they are more for helping you accomplish goals than teaching you everything there is to know about a subject. They are what you pick up when you get stuck or for ideas on how to improve what you've done.



Then when you interview you'll have a clear leg up if you can get to the technical interview. Getting past HR is the worst part for most techies. Dealing with the garbage HR likes to force on us is another. These people who have a degree and even a couple worthless certs and won't listen to you when you tell them they are heading for trouble doing xyz using method B. Watching them squirm expecting an "I told you so" is amusing but the reality is all of these folks work fall on the rest of us. Pretty quickly they are fired or start actually learning. That means we not only have to do our job AND thier job we get to play wet nurse while we are doing it. There's no faking it in most IT endeavors. It's a field where there is no resting on past laurels. Your best hope is to be kicked upstairs if you can no longer produce. There are no slumps in IT either. If your the sys admin problems don't go away, they cause work slow downs or even work stoppages until you fix it. Having a bad day means the rest of the company has a bad day. When you do your job right as a sysadmin nobody knows and often even cares. When something goes wrong the whole world will knock your door down.



Sys admins often are tucked away in the far back recesses of the company. Depending on how well you do your job and the demands of the posisition you actually have paid down time where you can play with techology. Sys Admins also usually get the most opportunities to play with stuff. It's officially called evaluating but some are just techological glitter. That need to play with the new toy out there even if you already know it's not practical for your network. When all is going well the job tends to be low pressure. The better you are the more likely this will happen. Band aid a problem and eventually that problem will come back to haunt you. If you are a sadist THIS is the job for you . You'll get the absent minded in on a frequent basis to reset passwords and such. Nix admins rarely have to go anywhere but their office and server room and whatever meetings you cannot duck. If you really can't duck a meeting, have no need to be there and really really want out of there just script a problem you know will get you called out to go fix. Then return a few mins before the scheduled end of the meeting for a recap. Windoze admins have to go sit at user's machines all day. It's a thankless job and your at the mercy of Microsoft and it's frequent mistakes. Occasionally though you get the opportunity to blame Microsoft for something you did so it's not all bad. You'll get downtime at times and get to play with new techologies. Just not as often or as much.



Programmers get the thrill of creation. The rest of the job actually sounds like a nightmare but isn't as bad as it sounds. Expect to work 50+ hour weeks. During deadline times expect to work as many as 80 hour weeks. Expect to spend lots of time in meetings. More time documenting your code and debugging than you spend actually writing. Also expect to have to teach people how to configure thier machines as you'll be blamed for bugs in windoze if you write for M$ platforms or bugs in other software. First question to ask a user is did they install something since the program last worked. Then ask them this 4 more times. Remember users lie. Often you find they did and that when they uninstall your prog goes back to working great. With Nix it's more a matter of stepping on your dependancies than the wiping out of your dlls or trashing of your registry entries. In the end you'll eventually get to walk into a store and see YOUR code there running the register or look at a map with pins for the thousands of people running your software. That's when it's all worth that hassle and stress. Coding is by far the most stressfull in general. Though there are exceptions. Write COBOL and you'll prob do a 40 hour week much it working on batch language rather than actual COBOL but 40 hours of COBOL is like 200 hours a week of any other language. Not because of complexity, the opposite actually. It's tedious, boring, barely IT.

Programmers tend to be the Rock Stars of IT. They get all the glory and recognition. The best programmers can actually get rich off thier work. Many a company has a single programer who gave up 3-10 years of thier life developing the essential software for that company. This programmer once the company becomes really sucessfull is set for life then.



DBA's tend to be ecentric. You get tucked away into a quiet corner. There are not many meetings you can duck. You are the central point of all early development meetings and need to be aware of changes so that you can protest them as being too difficult to do in the back end. DBAs get to do a quieter version of sadism. You are unquestioned in your field normally so you get to watch developers cry when you shoot down thier solutions. Generally you are king/queen of your domain and the only one execpt for really big shops. Just to keep you from enjoying your job too much report generation is often tossed at you (This being the bosses expression of sadism) It does tend to be a dead end job though. The only hope of promotion being possibly managing other DBAs. Since only the big shops have multiple DBAs this is not a real common promotion. The other promotion for DBAs is to move to a bigger shop and more complex backend. It is a dry and thankless job. Nobody says good job when you do something good, but mess up and you'll hear about it.



Tech support is what you do if you cannot find a job in another field. It also tends to lock you into the support area. They are the plague on a resume. Might even be better to put unemployed than support on your resume when trying to move into or back to another field. Logically you'd think companies would want thier BEST for support. Support is who most of anybody creates or destroy's return biz. There are several companies which I will not buy thier products because of really poor tech support issues. Microsoft's tech support has spawned hundreds of jokes and cost them billions of dollars in biz. End user support is often the ability to become a human lie detector and root out user stupidities but to do so in a nice way that doesn't insult the user. If they'd just tell you what they did strait off you wouldn't hate them so much. Instead they insist they didn't do what you know they had to have done to get the results they did. Worse you have to get them to admit it to be in a place where you can help them. This is a dead industry in the US anyway. It's all be shipped over seas or is paying pretty much minium wage. It beats digging ditches but just barely. At least digging a ditch you get exercise.



Pay scales vary widely by sub specialty and region.

The best paying jobs in IT right now are really talented Java programmers. You have to have an in demand sub specialty. Nobody can know all of Java. So you do EJB E-Comerace and you'll be paid well once you get 5 years experience for example. On the opposite end of the scale you can do .net for far far less money. LAMP (PHP wiht MySQL backend using Apache) will give you the widest pay gap. Some LAMP jobs pay as poorly as .net, others pay really well. If you want to be a freelance LAMP is the way to go. More than half the freelance work is LAMP.



Programming skills that both pay well and are in heavy demand.

JAVA - most Java specialties pay very well.

SAP - Actually usually pays more per hour but usually also comes with frequent bench time.



The rest of the programming market is sinking fast. Really fast.



Networking

Novell network engineers tend to get paid the best. CISSP and CNE are the only 2 certs likely to get you a job. An MCSE or RHCE might be the thing that gets you a job over another applicant who doesn't have one. Cisco certs are almost a must now days.



Network security specialists are the next highest paid and also the funnest job. You get paid to break into your own network. Much of the job is keeping abreast of threats and news. A large part is constant vigilance. The downsides are dealing with users intent on thwarting you from doing your job. A good security specialist will find a way for people to securely do thier jobs. A poor one will just say no and not offer a good way to get the job done. So there is a bit of stress involved with the job and people skills are important. One of the very few IT jobs that require any real people skills.



Top Unix and Microsoft sys admins get paid about the same. Mid level Microsoft admins tend to get a bit more. Entry level it's back to a level playing field. Unix admins tend to have more freedom and more perks.



With DBAs the Oracle folks get paid far more than anybody else. SQL Server and Sybase come in a very distant second. MySQL, Postgress, DB2 and other RDBMS systems a close third with SQL Server and may catch or pass them in near future. Oracle shops tend to be big and often employ multiple DBAs. You are dealing often with huge record sets and your work affects thousands to millions of people. SQL Server shops tend to be mid level.



The Coasts and Urban areas pay more but your buying power tends to be less. $100k in California is the equiv of about $60k in Houston in buying power. It's the equiv of about $50k in San Antonio. $100k in LA is about the equiv of $55k in Houston and more like $40k in Amarillo. These are just rough guestimates as the cost of living is so much higher along with taxes and other expenses. More so the more urban an environment the more likely that you'll have to conform to some dress code. in the early 90s I often had to wear business casual to work. Occasionally even had to dress up and wear a tie. By the mid 90s few shops required formal clothes, most were biz casual or jeans. By 2000 most shops in Texas at least were jeans. As the jobs go away the dress code seems to be stiffening up again. I personally factor in $5k a year for clothing expense for a formal dress code, $2k for biz casual and $0 for jeans. My reasoning is that formal clothes require dry cleaning, cost an arm and a leg to buy and are delicate. Changing a tire can easily destroy formal clothing. Any place I work that requires formal clothing I almost want a locker there to change into my "uniform" as I am so limited in what I can do until I get home and change. Can't go toss a football around, can't do yard work, anything without risking the clothes. Biz casual is not quite as bad but still the clothing wears out faster, costs more and there are still quite a few activities you cannot do in biz casual without risking your clothing. When formal and biz casual have see too many wears it's in the dumpster with them. When you wear jeans to work and you get a hole in them I just wear them on the weekends and holidays. Jeans means wearing clothes I'd be willing to wear normally. So no wasted money on clothing that I'll never wear outside of work.



Comutes can be hugely expensive. Depends on the region and the means. But when considering a job you have to factor in comute into the salary. If your driving, wear and tear on the car, gas, insurance, etc get expensive. So does bus fare, subway fare, tolls, and a host of other expenses. more so when you comute you are usually either going to pay way more for services like Docs, dentist, dry cleaning as a convience of doing it downtown or other biz center or your going ot have to take an entire day off to do it as there is no way to just go home on your lunch hour and do it. Then there is parking. Time spent comuting. For me to comute it has to be considerably more than a job that doesn't comute. $20k or more. If the pay is low enough you actually lose money long term by comuting. Especially if the job requires personal expenses such as dress code and buying books/training. After you get done with taxes, child support if you pay any, insurance, comuting costs and job related expenses you might find out your living mostly on your spouses wages. That working in a 7-11 down the street will bring more money home than the so called high paying job that requires you to comute.



In response to some answers before me.

Big Iron (mainframes) are moving to Linux. So the demand for AIX is going to drop severely. AIX does have the basics in common with Linux. Your better off knowing Linux first then learning AIX as Linux covers more ground, does more. If you know Linux then you only have to learn Big Iron specific stuff. AIX doesn't really prepare you for Linux where a Linux admin moving to AIX is just a matter of making up for the lacks in AIX. System operators are fast disapeering. The move to Linux makes them less necessary and moving away from COBOL means fewer jobs to load. Automated tape switchers mean no more loading tapes. Job control can be automated. COBOL itself is being phased out rapidly. The move to Linux will speed it's demise as developers have a host of much better languages to work with but that harness the power of Linux clusters and Big Iron. So jobs in Mainframe shops will disapeer faster than people can retire. In fact most younger people who work in mainframe shops want out.







My advice is to get into healthcare or work for the Gov.


This content was originally posted on Y! Answers, a Q&A website that shut down in 2021.
Loading...