I'm currently a 4th-year CS major. This is not to say I took many CS courses, but I still need to take classes on Operating Systems, System programming, S/W Engineering, AI, Database, etc. So, far, my programming skills are pretty trivial. I know C++/Java but can only write simple trivial programs and a basic knowledge of data structure (i.e. how it works but not the coding part). I have no job experience at all in the computer field (not even a freelance entry-level programmer). The web development I've done are webdesigning on Marcomedia Dreamweaver, Fireworks, Flash, and some webscripting PHP (heck, this is even related to CS). Little knowledge of networking, operating system (never used linux before). That's about how far I am with CS for a 4th year student. :(
Looking at the job prospect, I do see many S/W Engineering, C/C++ Unix, and similar computer positions in my area (southern California) searching monster.com and other big job sites. However, most of the requirements include 3-5+ years of programming experience, using industry tools that I've tried to learn 3 years ago but now became obslete, experience developing huge application. I do not have Windows API (MFC), C#, .NET, SQL, experience and do not want to waste my time learning it, only to realize it's going to change in a few years from now. Or the company I'm trying to learn it for will no longer use it. Plus, I see many Sr. Software Engineer position. Senior? What? Did they took all the entry-level to India or something?
It's not too late though, I've thought of maybe changing my major to Statisics with emphasis in statistical computing and a minor in CS. This is the description in my catalog for the Stats major w/ emphasis in statistical computing:
Emphasis in Statistical Computing
Modern day statistics applications require heavy computing for manipulating massive data sets, mining immense databases, and implementing computationally intensive data analytic tools to solve complex scientific problems. This emphasis is designed to prepare students
for careers in statistics by providing them with the data analytic and computational machinery needed to excel in all avenues of statistical science during an information age where statistical computing plays a crucial role. Students completing this emphasis would also be well prepared for graduate study in statistical computing and statistics.
Some of the classes do overlap my CS major requirements but the stats requires me to take a few more math classes, so double majoring might take 1-2 year extra and I do not really want that since I have somewhat lost interest in CS.
Is the job outlook in Stats good so far? I know Stats job are wide and you can find employment in fed./local government, marketing, financial, science, etc and not just programming or computer job sitting in an office getting fat. And if I can't find many jobs at the bachelor level, I could perhaps go on to get my Master in Stats or Bio-statistics. That's much better than a Master in CS in terms of job security and availablity right?
If I do continue in CS (without double majoring Stats nor minoring in it), I could perhaps take classes where there are large projects and can show that in my resume to prospected employers. However, I know I'm going to be in a competiton for a fresh CS grad with no industry experience seeking a entry-level programming job. I've talk with a guy who's a Java programmer who has been in the industry for 25 years doing CS jobs and he says, industry are still hiring fresh CS grads since they're fresh out of college with the latest technological knowledge/skills (yeah right!) but they don't get paid as much as experienced worker. Moving to India isn't an option for me.
So, which has more job security? Statistics or CS?
Any advice here?