I've been studying C++ for a few months, but still am in the beginning stages. I've decided to pursue my bachelors. There is a nagging question on my mind I must ask. Anyway, the degree is not a BSCS, but a general purpose CIS/business degree. My question... armed with a shiny bachelors degree and some in depth self study of C++ over the next 3 years (Im anticipating on atleast reaching a very solid intermediate level based on my learning curve) am I marketable for a decent paying programming job? Whats are some things I can do to enhance my resume? I have zero work experience in the field and cant leave my current job for helpdesk and such. I got a Network+ certification for the heck of it, but its only worth making into a paper airplane. Thanks for your help. If my post is in the wrong area or annoying, please delete it.
I think you'd deffo need to come up with some kind of experience that would set you aside from the herd. It could be as simple as maintaining a blog for your projects, explaining your thought processes and detailing the nature of the problems you will face. As a bonus, you'll find that doing this will accelerate your learning.
Some people might say join an open source project... that would be premature in your case. The major projects are just too extensive and have coding rules, etc. Work through some simple programs on your own first and see how you go.
You're in the right forum. Your ability to figure that out is a good sign -- many CS students who come here for help can't even do that right!
You wont get a $100K/year job right out of the gates, but if you put in the effort, you shouldn't have too much trouble landing a decent paying job. I'm not sure what the current entry-level salary is for the type of job you want and your geographic location, but there are websites where you can find that pretty easily. You will almost certainly be making more than you are at your helpdesk job. Try to take advantage of the career fairs if your school hosts any, it might lead to some good opportunities. At the very least, you may land an internship that will turn into a full time job when school's out. And if you really can't afford to leave your helpdesk job, it still will look good on your resume that you were able to manage a job and school. It would look even better if you can identify some part of your job that would benefit from having a software utility to manage or automate it. Write that utility, use it yourself, get other employees to try it out. Create programs you would find useful at home. They will be a portfolio of the work you have done on your own. You have examples of source code, should a potential employer ask, and it will show that you can start and finish a task, are independent and motivated. Alternatively (or also, if you have the time), get involved in open source projects. You don't have to be a primary contributor to the Linux kernel source, but having some involvement in any project can't hurt. It helps if it's software you use, as you will have more passion for the project, and more "skin in the game".
EDIT: In regards to SMurf's "OSS projects are premature", that is true now, but he's got 3 years before he graduates, so I'm sticking with it.
I've been considering that myself, for a while... but can it really help much when looking for a job ?
Originally Posted by SMurf
I mean, most companies are pretty much advocates of closed source software, wouldn't they scoff at someone from an open source project looking for a job there?
(I understand that there is much satisfaction and knowledge gain... so I'll participate in future, when I think I'm ready.)
The idea is purely to act as a source of experience. A manager can see that you've done something with your skills, a technical manager can wade in and check out the quality.
It's not about training to become the next RMS.
My experience has been quite opposite. Sure, the company's direct products may be closed source, but my previous two jobs and my current job rely extensively on OSS. Linux servers, embedded Linux, LAMP/LAPP stack, OSS libraries and utilities, databases, etc. Maybe this is less true in industries like video game programming, but for many companies OSS is the way to go.
Originally Posted by manasij7479