Forgot your password?
typodupeerror
Education Programming IT

Is a Computer Science Degree Worth Getting Anymore? 630

Posted by Soulskill
from the art-history-is-back-on-top dept.
snydeq writes "Self-taught technologists are almost always better hires than those with a bachelor's degree in computer science and a huge student loan, writes Andrew Oliver. 'A recruiter recently asked me why employers are so picky. I explained that of the people who earned a computer science degree, most don't know any theory and can't code. Instead, they succeed at putting things on their resume that match keywords. Plus, companies don't consider it their responsibility to provide training or mentoring. In fairness, that's because the scarcity of talent has created a mercenary culture: "Now that my employer paid me to learn a new skill, let me check to see if there's an ad for it on Dice or Craigslist with a higher rate of pay." When searching for talent, I've stopped relying on computer science degrees as an indicator of anything except a general interest in the field. Most schools suck at teaching theory and aren't great at Java instruction, either. Granted, they're not much better with any other language, but most of them teach Java.'"
This discussion has been archived. No new comments can be posted.

Is a Computer Science Degree Worth Getting Anymore?

Comments Filter:
  • by Anrego (830717) * on Tuesday September 11, 2012 @09:07PM (#41308007)

    Self taught and degree arn't mutally exclusive.

    Most of the really good programmers I know were largely self taught. They probably did a lot of coding in their spare time through high school, THEN went on to get a degree and finally a job..

    This is of course why there is a thing between getting a degree and getting hired .. it's called a job interview! An interest in programming prior to formal education is usually seen as a good quality and will put you ahead of a similar candidate who didn't know what a c++ was till his second year. You probably won't even get in the door at most places without the degree however... so still worth getting one until there is a massive (not just one recruiter) shift in thinking among the HR departments of the world.

    Also university isn't just about learning a trade (that's trade school). It's about getting a rounded education in stuff you probably don't give a shit about, building non-technical skills that are important (writing for instance), proving that you can tackle non-trivial problems with minimal supervision, and proving that you can handle a certain level of stress.

  • by Billly Gates (198444) on Tuesday September 11, 2012 @09:12PM (#41308039) Journal

    Thats all people care about. Some HR departments will only use a checklist with CS degree if they are a very large company. But CS graduates are often unemployed after graduation due to the lack of experience in hard times.

    What IT needs is someone to fix shit. Not talk about mathmatical models when the server goes down.

    If you want to get those nice jobs my advice is to pimp yourself out contracting for 2 years. The work is hard and the pay is mediocre at best but your contacts get HUGE afterwards when your non compete agreement ends and you can make bank. After that only hte most beaucratic companies will weed you out on that piece of paper.

  • Re:CS != Coding (Score:5, Informative)

    by JoeDuncan (874519) on Tuesday September 11, 2012 @09:17PM (#41308077)
    I second this. This is the crucial point.
    Would mod you up if I had any points...
  • Derp? (Score:5, Informative)

    by kelemvor4 (1980226) on Tuesday September 11, 2012 @09:20PM (#41308097)
    [quote] that's because the scarcity of talent[/quote] Hogwash, no such scarcity exists. There is a scarcity of talented programmers that will work for minimum wage (inside the U.S.). But that's not really the same thing now, is it?
  • Re:Mercenaries (Score:5, Informative)

    by Dogbertius (1333565) on Tuesday September 11, 2012 @09:20PM (#41308101)
    It is very difficult for the average worker when employers collude to artificially lower wages and keep dissenters unemployed:

    http://apple.slashdot.org/story/12/01/20/1433231/doj-investigates-google-apple-and-others-for-no-poaching-agreement [slashdot.org]
  • Fuck this asshat (Score:5, Informative)

    by Desler (1608317) on Tuesday September 11, 2012 @09:21PM (#41308113)

    In fairness, that's because the scarcity of talent has created a mercenary culture: "Now that my employer paid me to learn a new skill, let me check to see if there's an ad for it on Dice or Craigslist with a higher rate of pay."

    Actually, in true fairness people do this because most companies have no loyalty to their engineers are more than willing to ship their jobs overseas or give it to some less experience person so that they can pay the person shit wages while overworking them.

  • by the eric conspiracy (20178) on Tuesday September 11, 2012 @09:24PM (#41308133)

    Sure you can do coding without a college degree, and make a good living. Quite a few people I know do that.

    BUT if you want to be more than a code monkey writing simple procedural stuff for an insurance company, and do more interesting work that requires solving hard problems then that degree and more besides are going to be needed.

    The guys at Google working on stuff like image search need everything they can get from at least a MS in CS or math. PhD preferred.

    It is possible to self-teach to that level, but it is very very rare.

  • by MrEricSir (398214) on Tuesday September 11, 2012 @09:28PM (#41308175) Homepage

    But CS graduates are often unemployed after graduation due to the lack of experience in hard times.

    Um, what? We just went through the worst recession in years, and recent CS grads were still getting jobs without a whole lot of effort.

    What IT needs is someone to fix shit. Not talk about mathmatical models when the server goes down.

    Now we're knee deep into WTF territory. If you have a CS degree, why the hell are you working an IT job?

  • by macbeth66 (204889) on Tuesday September 11, 2012 @09:53PM (#41308375)

    Also university isn't just about learning a trade (that's trade school). It's about getting a rounded education in stuff you probably don't give a shit about, building non-technical skills that are important (writing for instance), proving that you can tackle non-trivial problems with minimal supervision, and proving that you can handle a certain level of stress.

    Interesting. But then tell me why I find that less than 10% of newly minted CS grads are worth a damn? They can't write ( English ), think critically, express themselves or code their way out of a paper bag?

    Give me a guy ( male or female ) who has a degree in anything else, or no degree at all, and worked their way through Corporate America and are articulate enough to describe the problem and I'll hire them. I'll even teach them the specific skills they need for the job. However, I stay clear of Java or Visual Studio only people. They have a truly warped and unrepairable mindset.

  • Re:CS != Coding (Score:4, Informative)

    by Missing.Matter (1845576) on Tuesday September 11, 2012 @10:06PM (#41308477)

    Computer Science is not about coding or programming, it's about the practices behind it.

    I'd say that CS is even a step below that. I didn't address much foundations in programming in my entire CS grad career. I had courses in data structures, algorithms, graph theory, linear algebra, automata theory, discrete geometry, computer architecture, operating systems, graph theory, logic.... nothing I would really consider best practices in software development. I could develop an advanced algorithm for you, tell you its complexity, give you a detailed derivation and proof of correctness, but as for a particular software implementation and how that relates to a larger project my degree does not prepare me for that. That's not to say I couldn't implement it, indeed I could in a number of languages. I just don't assert than any generic CS degree confers any guarantees about one's ability in the practice behind coding, which I think has far less to do with theory than the more practical aspects of it.

  • by afgam28 (48611) on Tuesday September 11, 2012 @10:35PM (#41308687)

    What IT needs is someone to fix shit. Not talk about mathmatical models when the server goes down.

    Now we're knee deep into WTF territory. If you have a CS degree, why the hell are you working an IT job?

    Exactly. For some strange reason, people seem to lump all "computer" jobs together, whether it's IT, Software Engineering or web design.

    Do people need a degree to do IT work? No.
    Do people need a degree to be a software engineer? Almost always, yes, unless they're exceptionally good.

    I'm not saying that there's anything wrong with IT, or that it's any less of a job. But it is a different job and it requires different skills.

  • by AK Marc (707885) on Tuesday September 11, 2012 @10:57PM (#41308823)
    Degree programs also teach basics that a self-taught person hopefully picked up, but may not have. There was one entire class on object oriented programming. Not "use an OOP language" but "here's C+, program this project in C+ using OOP best practices".

    There was also an entire class on assembler. Why? Because every program is written in assembler, the only question is whether it's assembled by hand, or there's a script (called "compiler") that converts pseudocode of some type into assembly code. Since you can call assembly directly in C, then you identify things C does poorly, and write it in assembly, then call that. It makes for remarkably efficient code, we demonstrated this in class with search and sort algorithms.
  • Re:Mercenaries (Score:4, Informative)

    by Grishnakh (216268) on Tuesday September 11, 2012 @11:49PM (#41309145)

    I work in an "at will" state too. At the place I worked before the last one, my entire team was also laid off, and with zero notice. I walked into work one morning, was told to go straight to a conference room, and we were given our pink slips right there. The company was Freescale Semiconductor.

    However, even though there was zero notice, the writing had been on the wall for many months. We knew the axe was going to fall, we just didn't know exactly when. The upper management had been bungling things so badly, for so long, pissing off their customers, and they finally threw in the towel and said they were going to exit this line of business.

    Was I mad? No. Because instead of trying to find another job before getting laid off, I was waiting for it. Why? Simple: "severance bonus". I got either 3 or 4 months' salary in severance bonus. (I think it was 4, because I had some accrued vacation time too.) Why would I want to leave before then? It was like a giant paid vacation. It was great: I got a giant check in exchange for promising not to sue them (and over what? I have no idea, but I wasn't arguing), so I could relax and take my time looking for a new job. I had a new one within a month or two.

    So I don't know about other companies, but from what I've seen and heard with the really big companies, getting laid off isn't that bad, because they cushion you well with a nice fat severance. It's certainly a lot better than "beating them to it" and quitting with no notice.

    So I'm sorry, I don't recommend quitting with no notice in most cases. Many times, the company will give you a nice check so you'll go quietly. And you may want to use one of your coworkers or your boss as a reference (as I did when I left that company, as I was on good terms with my supervisor).

    However, this doesn't mean you should never quit with no notice. If the company's run by a bunch of assholes and you're about to go out of your mind, I think it's excusable. It happened to me once. I don't expect to ever repeat that performance, but I'm not going to apologize for it, that place was just ridiculous. But I guess it taught me some things to look out for so I don't ever accept a job at such a crappy company again.

  • by Bremic (2703997) on Wednesday September 12, 2012 @12:46AM (#41309439)

    In my previous job my manager was asked to provide a list of keywords that would be used as a filter for resumes.

    The list of keywords did not reflect what is in the advertised job description, so if you didn't guess the correct keywords, you were never going to get through.

    More and more it's just blind luck if you will put in the phrases that are important, at the same time as writing something that will parse well enough to demonstrate good communication skills.

  • by l3v1 (787564) on Wednesday September 12, 2012 @12:58AM (#41309497)
    "To bring this back on topic - schools need to teach the logic and the basic techniques - with those, one needs simply to learn a language, which is not that difficult."

    I was in high school a bit later, in the mid-90s, in a math-CS spec class, and we got all that (we got 8 math classes, 4 programming and algorithm theory and numerical math classes, 4 programming labs per week), using 4 languages during the years (starting from all kinds of basic, followed by pascal, c and c++). Of course some of us were quite ahead of them in knowing programming languages before they began teaching them, but some of the theoretical stuff we were shown were quite on the level of what they taught us later during university years.

    From my experience then and later on, I can wholeheartedly agree with the parent post.

    Also, another - maybe interesting - information. From my high school class, 5 got PhDs, almost all (with one exception) got MSc/MEng/MA degrees, and about half of them work in CS or IT related fields.

    The high school wasn't in the U.S. though.
  • by XaXXon (202882) <xaxxon@gmaiCHEETAHl.com minus cat> on Wednesday September 12, 2012 @01:11AM (#41309539) Homepage

    Self taught programmers are often extremely weak in the area of algorithms and data structures. They solve problems with the tools they have, but they never had anyone to show them a whole additional set of tools to wrap their minds around. i.e. they don't know what they don't know.

    It's extremely rare that I interview someone purely self taught who can pass my interview and get a job offer. Their solutions are usually incredibly simplistic and naive.

  • by beelsebob (529313) on Wednesday September 12, 2012 @01:45AM (#41309709)

    That's why the whole, "I have a CS degree but I can't get a real job because I don't have experience!" excuse is BS. Anyone worth their salt as a programmer who has a CS degree can MAKE THEIR OWN EXPERIENCE at ANY TIME!

    Actually, that excuse is not bullshit in large part, but not because of the employers – because of idiot recruitment agencies. When I was looking for a job (thankfully, in work now), I had several recruitment agencies tell me I was insuitable because I did not have 5 years experience coding for the iPhone. When it was pointed out to them that 1) The iPhone API had only existed for 2 and a half years 2) I had apps in the store, making money 3) I had 10 years of experience coding for Cocoa on OS X, and a bunch of stuff before that, they typically came back with "yes, but those were all hobby projects, not actual industrial experience, we can't accept that".

Work without a vision is slavery, Vision without work is a pipe dream, But vision with work is the hope of the world.

Working...