Slashdot is powered by your submissions, so send in your scoop

 



Forgot your password?
typodupeerror
×

Computer Science as a Major and as a Career 578

An anonymous reader writes "IBM DeveloperWorks is running an interesting Q&A with Director of IBM's Academic Initiative, Gina Poole. In the article she talks specifically about taking computer science as a major and ultimately as a career. From the article: 'There are a couple of reasons [for the decline in science and engineering degrees]: one is a myth, believed by parents, students, and high school guidance counselors, that computer science and engineering jobs are all being outsourced to China and India. This is not true. The percentage of the total number of jobs in this space is quite small -- less than 5%. According to a government study, the voluntary attrition in the U.S. has outpaced the number of outsourced jobs to emerging nations. Further, for every job outsourced from the U.S., nine new jobs are actually created in the U.S.'"
This discussion has been archived. No new comments can be posted.

Computer Science as a Major and as a Career

Comments Filter:
  • Re:Go for it! (Score:1, Interesting)

    by Anonymous Coward on Saturday April 08, 2006 @12:52PM (#15091243)
    I am glad that you are finding yourself in interesting projects - but most companies that do the hiring are not interested in doing research into whatever.

    They just want a java programmer or whatever their latest inventory project demands. Then it's off to India!
  • Re:Go for it! (Score:2, Interesting)

    by BWJones ( 18351 ) * on Saturday April 08, 2006 @01:04PM (#15091304) Homepage Journal
    You are not hearing what I am saying..... I am not speaking as a programmer, because I am not. I am speaking as a person who is doing the hiring or is involved in projects that needs programmers and I am telling you that we need people to work on new projects. If you are simply doing basic Java programming, then those positions are not as much in demand. However, if you are doing new things in Java such as image or data analysis or are creating new and useful programs in Java such as ImageJ from Wayne Rasband, then hellyeah.... you have a job where ever you want it and it will not be outsourced because being able to think critically and establish yourself in new markets to take advantage of those needs it is not a commodity skill that can easily be outsourced. It takes a bit more work, but then just about everything worth anything takes a bit more work, yeah?

  • Re:Go for it! (Score:3, Interesting)

    by fistfullast33l ( 819270 ) on Saturday April 08, 2006 @01:31PM (#15091437) Homepage Journal
    Obviously you don't know what you're talking about. I work for a large investment bank and they definitely are hiring Java programmers here in the States. However, they don't want people that are just Java programmers - they want people with knowledge of Computer Science in general. Tying yourself to one language definitely is a bad idea nowadays. Learning how to think critically and develop/learn any language quickly and effectively are two skills that will take you far. Yes, my company is investing overseas, but most of the developers I work with are sitting right next to me. This past fall a recruiter from IBM told me what definitely seems to be true in all companies - they've sent so much overseas and reduced their domestic prescence so much that now that the baby boomers are retiring they have no one to step up. If anything, right now there is a huge demand for developers. My company has a huge problem hiring even though they offer huge salaries because there is so much competition out there.
  • by yagu ( 721525 ) * <yayaguNO@SPAMgmail.com> on Saturday April 08, 2006 @01:48PM (#15091507) Journal
    Where does it say outsourcing a job CAUSES 9 jobs to be created?
    Well, it doesn't say that! I guess that's why I said I could "infer" (draw a possible conclusion from someone's implication, intentional or otherwise, in this case, I think intentional).
    It just happens to be than there is a ratio of 1 outsourced job to 9 new American jobs.
    Yeah? Your point?
    I guess posting on Slashdot doesn't mean good understanding of cause and effect.
    Or cynicism for that matter.

    -Best Regards...

  • Re:From the article (Score:4, Interesting)

    by Anonymous Coward on Saturday April 08, 2006 @01:49PM (#15091511)
    I see a sort of natural selection at work, where those that have the "soft" skills and people skills tend to be more successful, and those that don't get stuck on a more "standard" career path. Maybe where you work it's that way, but at IBM (at least in Austin), things are different.

    Having worked a contract at one of IBM's places in Austin, I want to chime in and say this is completely correct. At IBM you need the "soft skills" all right. If you don't ass-kiss and boot-lick, you're not going anywhere.

    That was the only place I was actually glad they cut my contract short, as it was obvious they weren't interested in keeping someone who focused on getting the work done, as opposed to sucking up to the right people.
  • by guidryp ( 702488 ) on Saturday April 08, 2006 @01:51PM (#15091522)
    I would advise anyone who is not brilliant at development to seek another path.

    Consider it if you are really love coding, and are extremely good, and confident enough in your skills to job jump, or set up your own consulting buisness etc. Unless this is true. Run, don't walk to another faculty.

    Here is the reality of working as a developer in a big corporations. Crushing deathmarch deadlines. Tons of off hours solo work, and continual outsourcing. So much process overhead that it will suck any of the joy out of design/coding that ever existed for you. A process that is now vain as there exists a multi-million LOC monstrosity that is always ready to collapse.

    Your interactions will consist mainly of mind dulling staff meetings, early morning, barely intelligible conference calls to far off lands attempting to keep outsource staff up to speed (good luck with that) while the real work will be long solo hours staring at a machine (evenings and weekends if need be).

    I have always considered myself pretty good, but not the best. The only ones who really get much out of this job are the best.

    I could go on, but hey it is a beautiful sunny Saturday and I have to go into work.

  • by James Youngman ( 3732 ) <jay@gWELTYnu.org minus author> on Saturday April 08, 2006 @01:56PM (#15091542) Homepage
    I think you're oversimplifying. Computer Science is a field of academic study and a field of research (in universities and in companies). But the IT sector includes a lot of stuff that isn't computer science. Viz:-

    Science: Algorithm Analysis
    Not Science: Requirements capture, Most design work, Debugging

    Science: Big-O analysis, graph theory, computability evaluation
    Not Science: Distributed systems design, system architecture

    Science: Developing machine vision techniques
    Not science: Racing automated vehicles across the desert

    Science: Relational calculus
    Not Science: Database administration

    Is the non-science stuff Computer Science? No, but it's software engineering / IT / etc. Is it mandatory to understand the science bits to do the non-science bits? No, but often it helps a whole lot.

    So, it's valid for "Computer Science" to be a branch of "Science", but perhaps you think otherwise because there are things that you'd say are within Computer Science, that are not actually science. I'd agree with you there, but I'd claim they're not computer science either.
  • by MORTAR_COMBAT! ( 589963 ) on Saturday April 08, 2006 @02:06PM (#15091586)
    awesome quote.

    "Computer science is as much about computers as astronomy is about telescopes."
    "The question of whether a computer can think is no more interesting than the question of whether a submarine can swim."
    -- Edsger Wybe Dijkstra (1930-2002)
  • Re:That's Not Why (Score:3, Interesting)

    by cfulmer ( 3166 ) on Saturday April 08, 2006 @03:51PM (#15092003) Journal
    "Lawyering," as you put it, is not as much of a moneymaker as some people tend to think. True, many large law firms start in the $140K range, but they hire almost exclusively out of the top 15 or so law schools. Grab a look at the USNews & World report median starting salaries for the law schools -- the top-tier is flat, then they drop precipitously. There are scads of attorneys who start at $35,000 as public defenders or in some small law firm somewhere.
  • by DesiGuy421 ( 782201 ) on Saturday April 08, 2006 @03:53PM (#15092010)
    I go to a major university in the midwest that has a very good engineering program, but the CS department is in the College of Science. I recently found the statistics on my school's career center website for average salaries of graduates in either 2004 or 2005 (I forget which year exactly). To my surprise, CS bachelor graduates had the highest average salary amongst all other majors, and it's not even the school's major strength!

    I can also personally attribute to this fact. I'm a junior in CS w/a low GPA. I recently got an internship offer w/a major corporation for this coming summer. I have 3 friends who have GPAs > 3.6 in chemical, electrical, and biomedical engineering. The chemE couldn't find anything for this summer. The biomed and EE got internship offers, but I'm going to be getting paid more than them.

    It still doesn't make sense to me how I'm getting paid more than 3 engineers w/amazing GPAs, while I'm sitting here w/my crappy grades, especially at a school where engineering is the focus.

    My point? If you're in CS and absolutely love it, but are having 2nd thoughts b/c you feel the market is weak, don't change majors, b/c whatever fears you have about the market are just simply untrue.

  • by pilot-programmer ( 822406 ) on Saturday April 08, 2006 @03:57PM (#15092028)
    Here is another reason why people steer away from computer science - with a couple of years experience, finding a job is easy. But for the new graduate, finding a job can be very difficult. When freshmen hear stories about Seniors finding hundreds of jobs advertised as "Entry Level - must have 2+ years paid software development experience" it turns them off. And when there is no shortage of job listings like that, no shortage of companies claiming they cannot find anybody "qualified" and demanding more foreigners, and at the same time a significant number of new grads are being turned down, attracting new students to the field will be difficult. Things are starting to change, but people will not be attracted into the field until things are desperate enough that everybody graduing with a CS degree has a job in a month or two.
  • IBM'ers perspective (Score:1, Interesting)

    by Anonymous Coward on Saturday April 08, 2006 @05:14PM (#15092331)
    I'm lucky in that I got hired on during the tech boom and have worked at IBM ever since. Here's a summary of my observations. I have been at IBM a little over five years.

    1. There -is- a career track for non-management types that goes to the top of the company. From Senior Engineer, you have Senior Technical Staff Member, Distinguished Engineer, and finally IBM Fellow. The rough part is that the VAST majority of technical staff will NEVER make it passed Senior Engineer, even if they spend their entire careers are IBM. Why? Because IBM is chock full of super smart people, and unless you have: a PhD, a huge portfolio of really innovative patents, a successful track record on dozens of high profile projects, and finally, are recognized as an industry leader both inside and outside of IBM - You are NOT going to be a IBM Fellow.

    Corollary to 1. Many many MANY people in IBM realize the above. A lot of them are your manager. Unless you are obviously IBM Fellow material, they will openly encourage you to consider joining them in management. Take their advice for what it is - ADVICE. Or do what I do and blow them off for at least a decade of two. There's quite a lot of interesting work to be done, and they need many more mid-level engineers than they do IBM Fellows.

    2. Bureacracy. IBM has almost 100,000 engineers. If you can't live in an environment with lots of silly rules and requiremnts, you will probably not be happy. I came from the military, so I don't mind the BS.

    3. Outsourcing. My group may have hundreds of engineers working in India, I'm not sure of the exact number. But it's funny, they didn't lay anybody off saying "You have been replaced". They came to us saying, "Errmm, we hired a bunch of people in India, can you find them work helping out?" I have never worked in ANY development situation where we couldn't use more (talented) people, so we had quite a few things for them to do. It's very possible that IBM India will displace some of us eventually, but I don't see it happening unless the economy takes a huge downturn.

    4. Research. IBM leads with technology. I can't think of any other tech company that still does basic research. All the products I've worked on at IBM have come out of IBM Research. Intel doesn't do basic research, they "partner" with Universities and Government. Microsoft has "research" but I think they're just more for show. :-)

    All in all, I've been happy working at IBM. It hasn't all been beer and skittles, but I've also worked at other tech companies and I'm happiest where I am.
  • by squared9 ( 967077 ) on Saturday April 08, 2006 @05:20PM (#15092360)
    Hm, I would like to give a shot to a PhD programme, but unfortunately in my part of the world (the former Czechoslovakia) there is a serious lack of interesting PhD thesis themes that could allow me to participate in solving world's bleeding edge problems related to some meaningful practical problem (such as biomedicine research, etc). I can only take part in solving huge theoretical problems, and frankly said, I am not interested in hunting down the creatures invented by some clever theoreticians as side effects of their theories (although I enjoy theories). I achieved M.S. & summa cum laude at my first university, then moved to two best universities in former Czechoslovakia, attending their M.S. CS programme again (Comenius & Charles universities) and tried to gather as much theoretical knowledge as I was able to be capable of solving huge practical problems, hoping I would find interesting research topic that would allow me to utilize my talent, but I couldn't find any topic that would motivate me, as our universities do only a little cooperation with the industry, that in turn only awakens from the limbo caused by socialism and the research is almost non-existing.

    Therefore I took the job offer to one of the few R&D positions available in this part of the world from american companies (yes, there is also R&D outsourcing), earning about $30k/year (that is triple of the nation's average), but I clearly see that my capabilities are above to what is expected from me (but I enjoy the job, but miss the tight challenge). Therefore I present cryptology lectures to my colleagues to help them to raise their level and to not to allow my brain to become rusty and further deteriorate.

    But as I am turning 29 in the next two weeks, I feel this would be my last chance to try PhD programme and still can't find any suitable and motivating theme :-(

    Is this also problem in the USA, or you just have overload of interesting research topics and miss those that would like to participate in the research?
  • by Anonymous Coward on Saturday April 08, 2006 @05:33PM (#15092423)
    I have to say - there is an *acute* shortage of talent in the market.


    I call BS.

    I'm a 21 year old male, you couldn't tell me apart from your average person on the street (nothing horribly wrong with me), easy going and a little-on-the-shy-side personality who started programming on the Commodore 64 at age 6. My dad had an at-home software company, so this was bound to happen. Peeks and pokes were "magic" at the time, but I understood everything else I was doing. Fast forward 15 years, I've got 10 years of C++ and at least 5 of Java. Instead of rock collecting or whatever the hell else kids did in their childhood, I was coming up with things like recursion before I knew about them. I've even gone to college to try to get a degree because "you must have at least a B.S. degree to work at X" and I must say the coursework has been laughable to some of the personal projects I've put together.

    I've managed to scrounge up two full years of formal-tie work experience, and my performance (what a shocker) has indicated I'm worth a lot more than the minimum wage (and less) I've accepted just to get said positions.

    I've posted resumes on services like Monster, attended several college career fairs, and despite my exemplary grades and enthusiasm, jobs and internships invariably go to seniors. That was the first thing they ask, and when I hand them my resume they mark that I'm "only a freshman," "only a sophomore," and even "only a junior." To date I've gotten zero interview opportunities, and I've been actively looking for three years.

    What more experience do you people want from me? This industry only took off 15 years ago, if you expect four-six years of formal education and five years of job experience, why don't you STOP LYING and just admit you'll only hire people older than 27 who happened to become hobbyist computer programmers as soon as the technology was out there?

    -Mike
    Undergrad Student of Truman State University
    for a resume e-mail freazer at gmail dot com ... hah.
  • by ishmalius ( 153450 ) on Saturday April 08, 2006 @06:10PM (#15092561)
    Many people in both this minor boom, and the last dot-com boom, received poor CS educations because their efforts were targeted solely toward getting a job right out of school. They ignored the true reason for attending a school of higher education. How many people in the late 90's and early 00's learned only Java, because that was what employers wanted at the time? Now those tightly focused individuals are in danger of being prematurely obsolete.

    The best reason to get a good education is the more Socratic one: to become a better person. A complete, well-rounded curriculum might seem wasteful to the "just enough to get a job" crowd, but it results in a person who is generally more competent for life ahead. And as for Computer Science, learn more of the How and Why, and less of the What. That person might be less attuned for a given employer. But that person will have a much wider world of employment ahead in general, and will be more recession-proof in the end.

  • Re:Go for it! (Score:3, Interesting)

    by shess ( 31691 ) on Saturday April 08, 2006 @06:27PM (#15092624) Homepage
    I'm a BA in CS, and I barely stuck that out, and have been undeservedly successful, but ... while I agree that a smart+motivated person doesn't _need_ an advanced degree to make it, I disagree that getting an advanced degree is a bad idea. I bin a lot of people with advanced degrees, but one thing I do notice is that the more advanced your degree, the more you are at least aware that you need to think of things at a meta level. Lots of low/no-degree candidates get tied up on very basic questions, simply because they don't have the terminology, they don't have the mindset. And I don't mean esoteric stuff - everyone needs to be able to tell you how hashtables work and why you'd use them, compare trees to hashtables to lists, that sort of thing. You wouldn't think an MD was trustworthy if they asked you how that thingy on the end of your arm felt!

    Basically, there is a small small set of people who are true enthusiasts, who soak this stuff up through their skin because they live, drink, eat, and sleep CS. For them, it hardly matters _what_ route they take. But for regular people who are doing this as a job rather than an obsession, you can either put in your 4/6/8 years in school to learn stuff in a format designed for learning, or you can spend 2x that learning it on-the-job. If you learn it on-the-job, it will be much more authentic knowledge - you will not only know things, you'll know why they're important to know. But you have to be hella motivated to go that route.

    -scott
  • Re:Go for it! (Score:2, Interesting)

    by Amigan ( 25469 ) on Saturday April 08, 2006 @06:37PM (#15092670) Homepage
    As a member of ACM's SIGCSE (Special Interest Group on Computer Science Education), I read the interview very carefully. Yesterday's mail delivered the most recent proceeding - the 37th annual SIGCSE meeting, in which an article also addressed declining enrollments.

    As a professional in the field, I too assumed that outsourcing, layoffs, and the bust in the dot-com bubble would have been the reason for declining enrollments. The article, based on a survey of 836 high school students in 9 high schools (7 California, 2 Arizona) proved otherwise.

    The top three negative influences appear to be an aversion to sitting in front of acomputer all day, the fact that they are already sold on another major, and that they would like a more people-oriented major or occupation. (Taken from section 4.3 of Why Students with an Apparent Aptitude for Computer Science Don't Choose to Major in Computer Science written by L. Carter, Point Loma Nazarene University).

    People equate Computer Science with Programming. CS is more than just programming. If all you're doing is programming, then it's easy to see that you can be outsourced. If on the other hand, you show what else Computer Scientists are involved in - robotics, algorithms for movie special effects, improving the quality of life for people with missing limbs and for people with speech impediments - interest might pick up again.

    The author had five implications of the survey in order to improve undergraduate enrollements:

    • Offer multidisciplinary and corss-disciplinary programs
    • Fix computing science's image
    • Increase women's enrollment in CS
    • Train high school computing science teachers
    • Make CS courses fun

    Having gotten my BS in Computer Science 23yrs ago, I can see that the curiculum must change - can't just be teaching programming. Need to look at the advances in computing - courses about hardware architectures, applications of computing (weather modeling, human genome, etc). Programming is dry, and not what I do all day - why should it be taught that way?

    jerry

  • by Anonymous Coward on Saturday April 08, 2006 @07:42PM (#15092899)
    I think with all the "agile" this and that out there and the XP this and that out there, companies want coders, they really don't want engineers or engineering. Or at least a lot of small and midsized companies.


    You look at all the consultants and the books they are writing and then the people actually drinking that koolaid, the reality is that if you're a remotely decent coder and you don't mind not doing engineering you can get a decent wage in a "code it and forget it" style and hopefully move on before the problems rise. You don't need CS for that, you don't need a masters in SE for that.


    To be completely honest, if you're approaching it that way, you might actually enjoy it a lot more than if you really care about solving real problems and delivering robust, reliable and high quality solutions that might be deployed for 30-50 years. Just bang out some quick web UIs on some open source database stuff and by the time there are "problems" they'll probably "need" to build a new web page anyways. There is a remarkable amount of that going on and I almost think that the rest of us are suckers for letting it happen or not doing it ourselves. Look at the Ruby on Rails thing, there are two companies generating hype, writing books, teaching classes, etc.. around it. No substantial real world users of it, they have books on how it's "enterprise ready" and how to "get real" with it and people are eating it up. It's great stuff but there is much more sizzle than steak and the whole idea is to be on to something else before those problems become real.

     

  • by jay2003 ( 668095 ) on Saturday April 08, 2006 @08:23PM (#15093006)

    This a minority view point but I think one of the reasons for for declining enrollment in computer science and engineering in general is that these fields pay too little. Yes, there are million statistics that say average salaries are high for CS grads. However, if you compare the top 10% of computer scientists (in terms of skill and effectiveness) vs the top 10% of investment managers and then look at the their pay, you'll see radical difference. A really taltented and well paid computer scienceist might make a 180K a year. A talented investment manager is going to be paid in the millions. Really talnented doctors aren't as well comp'ed as investment managers but make much more than computer scienctists. Same for lawyers.

    Sure, you can gamble on stock options but its a gamble. This is not field where talent alone gives so any certainty of retiring rich. Most of really smart CS people I know are leaving the field and getting MBAs.

  • by Skapare ( 16644 ) on Saturday April 08, 2006 @11:33PM (#15093528) Homepage

    Then post your high paying job openings right here and now and let's just see if your money is where your mouth is. The fact is, talented and experienced people actually are plentiful. You just have to look around better. And you may even be misreading the resumes for all I know (I've met a few managers who couldn't do that ... which is needed since techie/geek type people can't write good ones). The local grown talent is here. You're just not making the effort. And the big corporations that also don't make the effort can easily fall back on the body shop sales people that come in carrying a few CDs full of resumes from the workers they are selling. So it's certainly a lot easier to sign an outsourcing contract than to take the proper steps to find someone as specific as you want.

    Keep in mind that the more specific you want to be about finding the person to fill the job, the more work you have to do.

    How many online job web sites do your jobs get posted in? Do you post in at least 10 of them? Or are you expecting the candidates to spend 100 hours a week hunting through all the repeats of the really stupid underpaying jobs on dozens of these sites. Now it isn't your fault that the online job hunting methods are so fragmented (because of way too many job sites, and too much clutter and noise on the big ones). Unfortunately, it's what you're stuck with just as much as those of us hunting for work are.

    And by all means absolutely do not dismiss any candidate because they are currently unemployed. If you think unemployed people can't do the job, then all you are doing is making worse the very problem you seem to claim does not exist.

    BTW, please include salaries in those job opening listings you post here. Let's see if your pay level really does indicate your belief in this shortage.

    And why are you hiding behind "Anonymous Coward"? Afraid someone will be able to track you to your company and find that you aren't really hiring at all?

  • Re:From the article (Score:3, Interesting)

    by metamatic ( 202216 ) on Sunday April 09, 2006 @11:53AM (#15094972) Homepage Journal
    What you need to be able to do is to balance conflicting goals. "Getting the work done" is only one of them. Here are a few others:

    - Retaining good working relationships with other teams, for when you need their assistance on other projects. (Example: Not pissing off the useless IT department and then having to ask for their help setting up an external server.)

    - Meeting corporate mandated standards. (Example: Meeting accessibility requirements, even if you happen to know that nobody currently using the application uses a screen reader.)

    - Moving in the same strategic directions as the rest of the company. (Example: Not building applications with .NET if the company is focused on J2EE.)

    - Eating the right dog food. (Example: Not using Oracle-specific but extremely handy SQL extensions if you work for IBM.)

    - Reporting results. (Example: It's a pain in the ass to summarize what you did each week/quarter, but management need to know, and you need them to know.)

    - Ensuring supportability. (Example: I don't care if Eiffel or OCaml are the greatest and most productive languages in the world; enterprise business applications need to be written in languages that you have a chance of finding programmers proficient in.)

    - Evangelism. It's not good enough to get the job done; you need to get the word out that you're getting the job done. A big company is a microcosm of the business world--you have many of the same problems, such as getting funding, getting awareness, getting buy-in, attracting users.

    The above concerns aren't IBM-specific; pretty much any company that hits a few hundred employees will have them. But yes, lots of people who are narrowly focused on technology will see them as "sucking up" of one kind or another.

    [Disclaimer: My opinions, not IBM Austin's.]

"Summit meetings tend to be like panda matings. The expectations are always high, and the results usually disappointing." -- Robert Orben

Working...