Doing computer science and my dad keeps telling me im not going to get a job

Page 2 - Seeking answers? Join the AnandTech community: where nearly half-a-million members share solutions and discuss the latest tech.

Gamingphreek

Lifer
Mar 31, 2003
11,679
0
81
What school do you attend OP? If you are attending a small little known in-state college, your GPA had better be top notch and your extra-curricular activities and previous experience must also be up there.

My GPA at present is a 2.56 (I hate that it is that low) and I go to Virginia Tech (I graduate this Spring). Going to a larger university, especially one that has a top tier reputation in the engineering field, gives you a little more leeway in your grades as the classes are, generally speaking, much more difficult.

Additionally, getting an internship/co-op is absolutely invaluable. You will learn SO much with one of those - not to mention, many times, they will turn into a full time job offer upon graduation.

Furthermore, as others have said, it depends on what you want to do with your degree. My desire was to work in the Intelligence Community doing IT Security (Ethical Hacking). I received offers from 3 different defense contractors. While I wont be doing IT Security until I get my Master's (I'll take night classes), getting my foot in the door is a huge step towards my career goals.

As for programming - there are always companies looking for competent programmers. If you can prove to them that you know what you are talking about and have a passion to learn more, a company will take a chance on you. That said, the more languages you know, the better. For instance, I have done some Perl, (X)HTML, and Python scripting; I am proficient in Java, C, C++, and x86 Assembly; and I have a somewhat advanced knowledge of the *nix OS. That makes me highly marketable. I may not know a lot of Perl, Python, or (X)HTML; however, just a rudimentary knowledge is better than none.

Game developing, Microprocessor architecture and Design (etc...) are all very very difficult to get into. Unless you are both at a very reputable school and at the top of your class, your chances of making any headway there is very slim.

Additionally, despite what some may say, a Math Minor does virtually nothing for you. Don't bother with it unless you have nothing better to do (Of course, if you have a desire to learn it, by all means continue to!)

Settling for an internship out of college in hopes of a full time offer is absolutely never a bad thing either. There is more than enough work out there if you apply yourself and are proactive in searching for it.

-Kevin
 

ultimatebob

Lifer
Jul 1, 2001
25,134
2,450
126
The world doesn't need more entry level medicore programmers... India is full of them!

That said, you'll do fine if you have some decent networking, server hardware, or project management skills as well.
 

txrandom

Diamond Member
Aug 15, 2004
3,773
0
71
Your dad sounds like one of my friends step-dads. Every single time I would talk to him, he'd tell be how so much IT is being outsourced and that it would be hard to find a job.

One reason it's being outsourced is because almost anyone can do it with some training. It's just much cheaper to pay people in rupees. Plus IT jobs are still growing overall, so the point is moot.

I will be graduating in May and have a job with an international oil company making a good amount, so your dad must be lying. :) But I also had an internship with this company.

I had three offers total and two were from companies I had interned with. The third only offered me a job because they were looking for something specific that I had done at one of my internships. So make sure you get some internships.

Also, if you want to do a lot of programming and development, make sure you do interesting projects that you can show off during interviews. I had no hope in the MSFT interview since I didn't too much non-web programming.
 

Modelworks

Lifer
Feb 22, 2007
16,240
7
76
Consider the mobile and set top box markets. Most of that requires some EE knowledge but not a whole lot to do the programming side. Programmers that can write apps for things like iphone or android, portable media players, and network devices are in high demand right now.
 

tvdang7

Platinum Member
Jun 4, 2005
2,242
5
81
What school do you attend OP? If you are attending a small little known in-state college, your GPA had better be top notch and your extra-curricular activities and previous experience must also be up there.

My GPA at present is a 2.56 (I hate that it is that low) and I go to Virginia Tech (I graduate this Spring). Going to a larger university, especially one that has a top tier reputation in the engineering field, gives you a little more leeway in your grades as the classes are, generally speaking, much more difficult.

Additionally, getting an internship/co-op is absolutely invaluable. You will learn SO much with one of those - not to mention, many times, they will turn into a full time job offer upon graduation.

Furthermore, as others have said, it depends on what you want to do with your degree. My desire was to work in the Intelligence Community doing IT Security (Ethical Hacking). I received offers from 3 different defense contractors. While I wont be doing IT Security until I get my Master's (I'll take night classes), getting my foot in the door is a huge step towards my career goals.

As for programming - there are always companies looking for competent programmers. If you can prove to them that you know what you are talking about and have a passion to learn more, a company will take a chance on you. That said, the more languages you know, the better. For instance, I have done some Perl, (X)HTML, and Python scripting; I am proficient in Java, C, C++, and x86 Assembly; and I have a somewhat advanced knowledge of the *nix OS. That makes me highly marketable. I may not know a lot of Perl, Python, or (X)HTML; however, just a rudimentary knowledge is better than none.

Game developing, Microprocessor architecture and Design (etc...) are all very very difficult to get into. Unless you are both at a very reputable school and at the top of your class, your chances of making any headway there is very slim.

Additionally, despite what some may say, a Math Minor does virtually nothing for you. Don't bother with it unless you have nothing better to do (Of course, if you have a desire to learn it, by all means continue to!)

Settling for an internship out of college in hopes of a full time offer is absolutely never a bad thing either. There is more than enough work out there if you apply yourself and are proactive in searching for it.

-Kevin

I go to university of houston. thanks for the insight guys.
 

Markbnj

Elite Member <br>Moderator Emeritus
Moderator
Sep 16, 2005
15,682
14
81
www.markbetz.net
You got a lot of very good responses here. The thing I will add is some bottom-line security: if you develop competence at a technical skill that is valued in numerous marketplaces, you're not going to want for a job. So the old man can chill a bit on that front (coming from another old man with three teenaged kids, and you can tell him I said so :D). I'd be thrilled if any of my kids showed an interest in any aspect of computer science, software engineering, network operations, security, etc. You gain some experience in those fields and you're going to eat and have a roof over your head, medical insurance, and a car to drive. Beyond that you take your career where you want it to go.

The other thing I would say is it's a career like the law in some ways, or architecture, drafting, etc. Don't get into it if you don't really like it.
 

zebano

Diamond Member
Jun 15, 2005
4,042
0
0
My experience in School was similar to Apathetic. Very math intensive. I worked as a web programmer in IT (internship became a full time job) before I finally got into the engineering side of the business. We're constantly looking for people who can write device drivers and actually understand how a computer works. While I wish I had gone into Comp. engineering since it would have prepared me for this better, I actually do enjoy abstract math (proofs) and picked up a math minor for fun (and 1 course over my CS requirements).
 

RaiderJ

Diamond Member
Apr 29, 2001
7,582
1
76
I graduated in '04 with a CS degree. My coursework was very math intensive, and several semesters of programming along with logic/algorithms/etc. I started off doing full time programming, but now do more cyber security and systems integration. Depending on what you want to do, you can go into networking, web development, or systems engineering/integration. I do very little programming now, but interact with developers on a regular basis.

If you can handle the math, I'd highly recommend a full CS degree over something like an MIS. In my experience people with those degrees have little to no understanding of the theory behind much of computer science, and are usually limited to mundane programming tasks.

Also try to stay away from anything help desk related. Getting stuck helping people fix Windows problems is going to put a damper on your career.
 

tvdang7

Platinum Member
Jun 4, 2005
2,242
5
81
Here's my plan
-Finish school
-Get intership while in school
-Learn to play with iphone/android sdk while in school (school has a class for iphone apps)
Hopefully make some kind of respectable not the best thing in the world game for my resume
-Get some job

My questions
- how many classes if programing did you guys need before getting an internship? Im just in my first class of c+
-Anyone with a CS business option? we have 3 options at our school CS science CS programming and CS business . I'm doing Programming only difference between the 3 are 2 classes
 

Kirby

Lifer
Apr 10, 2006
12,028
2
0
Before I got my internship, I had 3 or 4 programming classes I think. Basic, object-oriented stuff, java/unix, and maybe a data structure class. I think most internships will find you something to do even if you just have some basic knowledge of programming and your GPA is decent. I think my first internship project was just modifying a previous interns program to do some xml parsing and write it out to particular format, and cleaned up his GUI a bit. And my boss is always there in case I have a question about how to do something. I've probably learned more working than in school.
 

tvdang7

Platinum Member
Jun 4, 2005
2,242
5
81
Damn im worried my gpa is low and no one will want me ,since i was pursuing pharmacy and the science classes killed me (failed microbio twice).
 

invidia

Platinum Member
Oct 8, 2006
2,151
1
0
Here's my plan
- how many classes if programing did you guys need before getting an internship? Im just in my first class of c+

For me zero. I have never taken a programming class in my undergrad or graduate. At least not intro to XXXXX programming or advanced XXXX programming type of courses. I was self-taught. I got an internship based on personal web development and programming. My employers were confident enough to do a temp-to-hire after seeing some sample projects I did personally. None of the employers I applied for asked for my GPA or even cared about it. I was a physics (BS) and comp engineering (MS) major.

If you want to go into programming, I recommend focusing on web/mobile. I got more job offers during the peak of the recession than a veteran desktop software engineer (a friend). The only areas that would seem very profitable in desktop is the gaming industry and probably somewhere in defense.
 

jinduy

Diamond Member
Jan 24, 2002
4,781
1
81
when you say web, are you talking about web components like jsp/servlets or back end stuff like web services?
 

Dissipate

Diamond Member
Jan 17, 2004
6,815
0
0
I got my computer science degree in 2007. After being in industry for a couple of years I have to say that my experience has not been nearly as rewarding as I thought it would be. To start with, the programming languages that they teach in universities and use in industry are stale, verbose and brittle (Java and C++ being at the top of that list). Then to top it off, companies are still using crappy version control software like CVS.

One of the worst aspects of it though is dealing with coworkers and their lack of documentation. It seems like there are a lot of companies out there that just want to rush software products out the door and not take the time to document anything. You could very well be asked to figure out what some app that has 100,000+ lines of undocumented code is doing.

Even after all of these issues, I still enjoy my job overall. But it absolutely without a doubt is not for everyone.

Granted, my experience thus far has been working at two startup companies, so take it with a grain of salt.

I work with a friend of mine on the weekends on our own web app. He is an electrical engineer and knows little about programming. But I work with him and teach him. He is learning fast. I enjoy this more than my job because I can actually use languages that I enjoy such as Python and revision control that is sane such as Git, and I can enforce good programming practices with regards to style, and documentation.
 

kmmatney

Diamond Member
Jun 19, 2000
4,363
1
81
I've been working for a small company for about 15 years, who make metrology equipment for the semiconductor industry, so the programming involves motion control (motors, robots), data acquisition, complex data analysis, user interface work, and testing. We control machines that are operating in billion dollar wafer fabs, so there is some stress, but I can say that it certainly isn't boring and I like the work. However, all of our programmers have engineering degrees (like I do) or physics degrees. We have on occasion hired computer science people, but its never worked out well. In some cases, they were too worried about writing "correct" code like they learned in school, and didn't see the big picture of what was really needed. Work was never completed on time, and they were always making the code way overkill for what was needed. An example would be a programmer applying polymorphism techniques to the smallest of jobs, say lighting up a warning LED on our tool (as an example). I could go on...

In any case, you can be involved with computers and computer hardware without a CS degree. I have a B.S. and M.S. in Materials Engineering and never thought I'd be a programmer, although I always had a passion for computer hardware. I still consider myself an engineer, and about half my job is enginnering work, although I'm 100% programmer when deadlines come up. I started out just writing software to analyze X-ray diffraction data in my Materials Science lab, and things started from there. About 5 years into programming I became a Microsoft Certified Professional, and I think that is probably worth more than a C.S. degree, at least for me.
 
Last edited:

kmmatney

Diamond Member
Jun 19, 2000
4,363
1
81
For me zero. I have never taken a programming class in my undergrad or graduate. At least not intro to XXXXX programming or advanced XXXX programming type of courses. I was self-taught. I got an internship based on personal web development and programming. My employers were confident enough to do a temp-to-hire after seeing some sample projects I did personally. None of the employers I applied for asked for my GPA or even cared about it. I was a physics (BS) and comp engineering (MS) major.

If you want to go into programming, I recommend focusing on web/mobile. I got more job offers during the peak of the recession than a veteran desktop software engineer (a friend). The only areas that would seem very profitable in desktop is the gaming industry and probably somewhere in defense.

Intersting that you never had a programming class, even with a Master's in Computer Engineering, but I guess you can cover a lot of other ground in computer engineering, such as hardware, circuits, logic, algorithms, etc...

I am also a self-taught programmer. That's one problem with a C.S. degree - not only do you compete with other C.S. majors, but you compete with physicists and engineers who taught themselves to program. I would agree that desktop programming is not looking good, and to get into web/mobile if you want to code. The problem is, I doubt they teach much of that in school.
 

Dissipate

Diamond Member
Jan 17, 2004
6,815
0
0
I've been working for a small company for about 15 years, who make metrology equipment for the semiconductor industry, so the programming involves motion control (motors, robots), data acquisition, complex data analysis, user interface work, and testing. We control machines that are operating in billion dollar wafer fabs, so there is some stress, but I can say that it certainly isn't boring and I like the work. However, all of our programmers have engineering degrees (like I do) or physics degrees. We have on occasion hired computer science people, but its never worked out well. In some cases, they were too worried about writing "correct" code like they learned in school, and didn't see the big picture of what was really needed. Work was never completed on time, and they were always making the code way overkill for what was needed. An example would be a programmer applying polymorphism techniques to the smallest of jobs, say lighting up a warning LED on our tool (as an example). I could go on...

In any case, you can be involved with computers and computer hardware without a CS degree. I have a B.S. and M.S. in Materials Engineering and never thought I'd be a programmer, although I always had a passion for computer hardware. I still consider myself an engineer, and about half my job is enginnering work, although I'm 100% programmer when deadlines come up. I started out just writing software to analyze X-ray diffraction data in my Materials Science lab, and things started from there. About 5 years into programming I became a Microsoft Certified Professional, and I think that is probably worth more than a C.S. degree, at least for me.

I have to agree that you get way less than advertised with a C.S. degree. I was taught mediocre programming languages and practices in my C.S. program, but I got a couple good years of intense programming practice, while being exposed to advanced concepts. Now that I have my degree and I recognize the deficiencies of my university training, I can access tons of resources on the web to take my skills to the next level, while making decent money at my day job.

See the problem that I see with other engineering disciplines is that unless you have a billion bucks, you can't start your own business. My best friend just got his master's in electrical engineering. Guess what? He is coming over to my place several days a week to learn programming and work on web apps. The reason being is that he doesn't have a billion dollars to start up a semiconductor company and he doesn't want to just work at a company for the rest of his life. He loves EE and does that for his day job but when it comes to having a side business, he has chosen programming.

That's why I chose C.S. I'd rather be the best at something I can do in my garage, or anywhere else for that matter. I recognize my degree for what it is: an introduction to a vast discipline. If I planned on just having a day job for the rest of my life EE, ME or some other engineering degree probably would have been better, that I agree with. In any event, I sure as heck don't see myself working 15 years for the same company. As for Microsoft Certificates, no comment on those.
 

Red Squirrel

No Lifer
May 24, 2003
70,623
13,818
126
www.anyf.ca
I find when it comes to programming it's best to just teach yourself. In my 3 year CS program we had lot of programming courses but all of them just scratched the surface, and important factors like security were not even considered. Lot of tests were actually based on code we saw in class so anyone who was good at memorizing code could pass. Most people actually did this, instead of understanding what the code did.
 

Markbnj

Elite Member <br>Moderator Emeritus
Moderator
Sep 16, 2005
15,682
14
81
www.markbetz.net
Personally, I've always felt a computer science degree was best applied to doing computer science, and there is a ton of interesting science being done. It's not the same thing as programming, although it involves programming.
 

GaryJohnson

Senior member
Jun 2, 2006
940
0
0
The world doesn't need more entry level medicore programmers... India is full of them!

That said, you'll do fine if you have some decent networking, server hardware, or project management skills as well.

+1 for Project Management skills.

Anyone can write code. Some people can write clean well-structured code. Very few people can get a group of coders to all write clean well-structured code for their project. (Tip: give them treats (pizza, donuts, etc) when they do well)
 

Dissipate

Diamond Member
Jan 17, 2004
6,815
0
0
+1 for Project Management skills.

Anyone can write code. Some people can write clean well-structured code. Very few people can get a group of coders to all write clean well-structured code for their project. (Tip: give them treats (pizza, donuts, etc) when they do well)

The problem is that as far as I know, universities do not teach style, mainly just correctness of output. Correctness of output is just 1 aspect of good design. Other questions you have to ask yourself is: is your code: well organized, extensible, re-usable, concise, efficient, clear, robust, well documented (or even self documenting)?

That's why I consider software engineering an art as well as a science. Getting the computer to do what you want efficiently is the science part, making your code human friendly is the art part.

That's why I recommend anyone who wants to get into programming to get on a site like www.github.com (social coding) and start checking out and participating in open source projects. You can get your code reviewed by others for free, and may even get pointers from more experienced developers.
 

Markbnj

Elite Member <br>Moderator Emeritus
Moderator
Sep 16, 2005
15,682
14
81
www.markbetz.net
+1 for Project Management skills.

Anyone can write code. Some people can write clean well-structured code. Very few people can get a group of coders to all write clean well-structured code for their project. (Tip: give them treats (pizza, donuts, etc) when they do well)

Anyone can write code, but project management skills are rare?

rof,l
 

Markbnj

Elite Member <br>Moderator Emeritus
Moderator
Sep 16, 2005
15,682
14
81
www.markbetz.net
You've never had a crappy project manager? What fantasy-land IT company are you working for?

Every project manager I've ever worked with essentially had the job of fending off the users so we could work. If the users didn't bug me, and I got relatively decent documents, I figured he or she was an excellent project manager.

I don't work for an IT company. I work for a software company.