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


Forgot your password?

The Future of IT in America? 715

tomocoo asks: "As a young person considering various choices for the future career I'd like to pursue, IT and computer science continually reappear near the top of the list of fields I'm interested in. In fact, one of my only hesitations is the suspected ease by which programming and other related tasks can be sent to other countries for pennies on the dollar. How much of a threat do the readers of Slashdot feel outsourcing is to the American programmer? Should I and other young people be pursuing something more specialized or have I simply been watching too much CNN?"
This discussion has been archived. No new comments can be posted.

The Future of IT in America?

Comments Filter:
  • by dracocat ( 554744 ) * on Saturday April 22, 2006 @06:36PM (#15182176)
    I have been hearing about the doom of the industry for a very long time. The fact is, is that IT and Computer Science follow a cycle.

    Will there be a high paying job waiting for you the moment you graduate? That is impossible to predict, but long term you are almost assured to find a healthy career waiting for you.

    Proof that the offshoring is an overexagerated issue? Look at average salaries of graduates. They may not be as high as you want them, but compared with any other fields they are consistently towards the top. Even now, with so much media attention focusing on the downturn in the tech economy, I doubt you would receive very much sympathy for having to receive a starting salary of over 51k. (Starting Salaries) []

    Anyone complaining about the lack of jobs and low pay in the industry is an anomaly. I am not saying it is their fault, but there will be people that simply have bad luck finding a job no matter what field you look at.

    In short, the reason there is so much noise is simply because some people have unrealistic expectations of both finding a job and the pay they will receive. Take that away and what you have is an industry on a whole that is actually more healthy than a lot of others.

    All of that being said, it is always better to specialize if your goal is more money. Almost any job will base your pay based on your expertise in the area they are looking for. If a job is looking for a C# developer and you have a little knowledge of everything then you will get paid for having a little knowledge of C#. If on the other hand you are a Java expert and have been doing nothing but Java for the previous 5 years you may not get that C# position at all, but when you find a company looking for someone with knowledge of Java you can definitely expect a higher pay.
    • The starting salary only applies for those graduates who get jobs in the first place.

      Using the NACE methodology, if 10% of CS graduates nationwide get jobs paying an average of $50K, and 90% of CS graduates don't get jobs at all, the average starting salary for a CS graduate is $50K.
      • Re:Starting Salaries (Score:3, Interesting)

        by dracocat ( 554744 ) *
        That may be, but the amount of money being paid is also a correlation to the supply vs demand ratio for a particular job.

        You may also notice in the same study that more jobs were offered in IT than registered nurses, and I dont think anyone who is a registered nurse is complaining for lack of employment.

        The fact remains, it is not difficult to get a job in IT. You or someone you know may have had some bad luck, but the industry as a whole is very healty; and when comparing IT graduates with those of other
        • Those are two VERY different things.

          *Job in computer science = programmer getting paid 51k/year. You might end up actually building software, though most likely you'll get a job in the so called "defense" industry, making a living rewriting code for yet another way of bringing death to others. If you have ethics, or lack friends in the business of death, then this job will be closed to you and you'll have to go wait tables, flip burgers, or reeducate yourself, and consider comp sci as something that prepa
      • by Brandybuck ( 704397 ) on Saturday April 22, 2006 @08:10PM (#15182503) Homepage Journal
        The starting salary only applies for those graduates who get jobs in the first place.

        Having recently interviewed several candidates on campus, I'm starting to see why they're not getting hired. Most are unmotivated, but a lack of income will soon fix that. The real problem is that they don't have any real world skills. A university CS/CE graduate should either have enough hand-on programming experience to know which end of a compiler goes up, or enough theoretical knowledge to know the difference between the basic data structures. I'm not getting that from the candidates I'm interviewing.

        Unless the universities straighten up, I think the future of university graduates is an extra year at DeVry/ITT just to get the skills to be employable.
        • by jcr ( 53032 ) < .ta. .rcj.> on Saturday April 22, 2006 @08:38PM (#15182586) Journal
          A university CS/CE graduate should either have enough hand-on programming experience to know which end of a compiler goes up, or enough theoretical knowledge to know the difference between the basic data structures. I'm not getting that from the candidates I'm interviewing.

          I find that the quality of applicants varies enormously, even from the same school. I do see rather a lot of "grade inflation", but new CSEE graduates who had a 3.0 or better GPA are usually at least trainable.

          What I try to seek out is whether a newly-minted CS degree holder likes the field, or just got steered to it by a guidance counselor. If the interest is there, the talent can generally be trained in.

    • I agree. IT is no diffirent than any other sector. The problem is that the IT industry went through this idealic phase where anyone who knew how to turn on a computer was making over $50k a year as a computer programmer. So yes, compared to the 90's the industry would appear to be in a slump. But if you look at the 90's as being the result of stupidity that should never have existed, you will see that the IT industry is just like any other sector. You can make a living in whatever industry you want.

      The diff
    • by reporter ( 666905 ) on Saturday April 22, 2006 @07:17PM (#15182328) Homepage
      The free exchange of goods and services (including labor) between the United States and India damages how the (relatively) free market operates in the United States. The (relatively) non-free market in India has destroyed much of its economy. The majority of Indians are unemployed or underemployed. Although the news reports describing the tech boom in India is accurate, that boom is largely restricted to the tech sector. The remainder of the Indian economy is in terrible shape. Indian government intervention in that economy generates hordes of desperate labor that flood into the United States or into the Indian tech sector.

      The final result is that, due to the free flow of services (including labor in the form of outsourcing) between the United States and India, Indian government intervention now indirectly damages the operation of the American free market (for high-tech labor), suppressing wages and diminishing working conditions.

      You see a similar phenomenon in the unskilled-labor market. Mexican government intervention in the Mexican economy generates hordes of desperate labor that floods the American market for unskilled labor. The presence of Mexican illegal aliens in the American market suppresses wages and diminishes working conditions as American employers exploit a nearly limitless supply of desperate workers willing to work for slave wages in dangerous or grueling conditions.

      No job in America is safe from this destruction to the free market.

      You should select the job doing the kind of work that most interests you. In your spare time on the weekend, stay abreast of international news. Vote for populist politicians who support free trade between the United States and only other (relatively) free markets like Canada and Japan, not Mexico nor India. Support policies that terminate trade between the United States and (relatively) non-free markets like Mexico or India.

      Also support policies that compel Washington to aggressively intervene in both the Mexican government and the Indian government. The nature of the intervention should be at least as aggressive as the Mexican meddling (by Vicente Fox and his corrupt ilk) in the American Congress. Washington should eliminate Mexican politicians and Indian politicians who promote the economic destruction that has generated hordes of desperate labor fleeing to the United States.

      • Washington should eliminate Mexican politicians and Indian politicians...

        WTF? Pardon me, but your arrogance is showing.
      • by jcr ( 53032 ) < .ta. .rcj.> on Saturday April 22, 2006 @08:47PM (#15182615) Journal
        The (relatively) non-free market in India has destroyed much of its economy.

        I think you've missed the real story here, which is that India's economy is improving at a drastic rate as India gets over its traditional habit of trying to follow the Soviet central-planning model. High tech isn't the only area where the difference is dramatic. India was unable to feed itself only about fifteen years ago, and today is a major food exporter to the rest of Asia, for example.

        • by killjoe ( 766577 ) on Sunday April 23, 2006 @04:11AM (#15183791)
          One important reason why developers can work for cheap in india is the prevelance of slave, indentured and child labor there. Because of a permanent underclass of slaves and near slaves the developers get all their needs for housing, food, clothing etc met dirt cheap. When your bricks are made by 14 year olds who have been sold into slavery it's pretty cheap to build a house.

          If India ever outlaws child labor or the buying and selling of humans and gives the untouchables full rights the cost of development will go up there and the outsources will move to africa or use chinese prison laborers.

          In actually a plummer gets just as much money as a code monkey if not more and your job is not likely to be outsourced. Think about it.
      • by say ( 191220 ) < minus caffeine> on Saturday April 22, 2006 @08:53PM (#15182640) Homepage

        No job in America is safe from this destruction to the free market.

        This must be the least insightful comment on globalization I've ever seen. What constitutes a free market seems... vague. Do you really have any proof that government intervention in Canada is any less than in Mexico?

        Here's a mind bending newsflash for you: The difference between the countries you want to trade with and the ones you don't want to trade with is that the non-tradables are _poor_, while the tradables are _rich_. You don't want free markets. You want protectionism, where the rich world is allowed to keep its benefits by keeping the poor away through immoral trade barrier.

        So it isn't the free market that is being destroyed in the US, it is the protectionistic privileges. That's the true essence of the free market: it makes sure that cheapest (per quality unit) is preferred. And it's no way the US can remain cheapest without dropping some of its (relative) riches.

      • by jotaeleemeese ( 303437 ) on Monday April 24, 2006 @03:56PM (#15192276) Homepage Journal
        When Spain and Portugal joined the EU, the cries of panic from the workers (and populists, xenophobes and all such distinguished ilk) in richer countries (Germany and France back then) was immediate.

        The rich countries were going to be swamped, the jobs were going to be gone, disaster could not be averted.

        20 years later Spain and Portugal are prosperous countries, France and Germany are struggling.

        But you will find impossible to find any sane economist of politician that would blame Portuguese or Spanish immigration for the problems of France and Germany.

        Most likely you will find that the protectionist policies of France and Germany combined with a rigid job market are to blame. Most serious imigration studies (i.e. not sponsored by Neonazis) say that immigration has a positive net effect in the society that receives the immigrants.

        You say that unskilled Mexicans take US jobs. Well, if my unskilled compatriots can take jobs that US people could be doing then you should question how bad your education system is, since unskilled people can take those jobs (you guys have an average of High School education or thereabouts. If we can beat you with 6 or 8 years less of education, either we are tremendsouly clever or you are brain dead. Most likely we are not competing for the same jobs).

        Mexicans take the jobs that nobody else wants (cleaners, dish washers, gardeners, cotton or tomato pickers, etc) filling inneficiencies in the US economic system (if the Mexicans did not do those jobs, who would Mr Sherlock?)

        And Mexicans do it gladly expecting little or nothing in return. Until now at least, we are a patient bunch. We demand nothing for long, but once we get tired we get down to bussiness to get what is rightly ours.

        Mexicans (and other poor immigrants) are not taking skilled or semiskilled jobs, they are taking the jobs they can do (unskilled ones), so square this circle for me Sherlock:

        -Who would do the jobs Mexicans are doing now?
        -How would you remove 10 million or more people doing productive work?
        -Who will be rushing to cover those positions once the Mexicans were stopped or gone?

        I really wish that the US goverment and racists and xenophobes that circle them were really serious about building that 2000km wall in the Rio Bravo.

        Nothing would provide me more pleasure than them retreating once the people doing productive work in the US, the families that otherwise would not have a clean house or a nice nanny looking after their children and in general the people benefitting from Mexicans' work in the US, once these people gave the xenophobes a reality check.

        But the US government is not stupid. They know that by pretending to be though without actually doing anything they get to have their cake and eat it: on the one hand they placate the xenophobes, on the other hand they get fresh workers (never mind if a few hundred die while crossing the border every year) badly needed by the US economy (hint Sherlock: if there were no jobs in the US Mexicans will not go there. We are badly treated and insulted in the US, it is the need that make us go there).

        Finally, before you blame the Mexican goverment for not taking care of its citizens, I just want to remind you that when we elected our first democratic leader your embassador backed a murderous general that executed it. That was followed by 70 or so years of a "perfect dictatorship" as one of the greatest writers in Latinamerica put it.

        Your country keeps our countries poor, and reaps the cheap labour, pretending to be offended by the "invassion" in the process. A real work of evil genius.

    • "...long term you are almost assured to find a healthy career waiting for you."

      Don't belive that for a second. I have a BS in EECE/CompSci, MS in Physics, and took
      all of the courses to get a Ph.D. in Computer Eng. I have 15 years unix experience,
      10 years hands on sysadmin experience, can design and write software, and in fact
      hardware at the device level.

      When I was in the Ph.D. program, people from other countries were getting the internships,
      job offers, etc. The four (out of almost 200) grad students who we
      • So there, I said it. I was born here, went to college here, gained expeience here...

        And 1.5 years and 1000s of resumes (with college degrees and experience and all) later, I am still without employment in the US.

        Of course your mishmash of experience and lack of a clear focus couldn't possibly be part of the problem. (What exactly kind of work are you looking for? Your degree indicates CS, yet the experience you cite is IT.)
      • by mcrbids ( 148650 ) on Sunday April 23, 2006 @04:01AM (#15183770) Journal
        I'll be glib. I'll be gleeful. And I'll be right.

        Make your own damned job. It's the American way. Start your own business, hang a shingle, make some sales, do some cold calls. It hurts at first, contracts don't come with a 401k. But, pretty soon, you get the whole customer-relations thing figured out. Then, not too horribly long after that, you get the whole tax/accountant/bank thing figured out.

        Next thing you know, you're swamped with highly paid work! You've stretched your wings, you've gone out, you landed a few key contracts, and suddenly, you have more work than you can do.

        So then you figure out hiring and firing. It's a painful lesson, as you often really like the people you're firing. It can be very expensive, if you miscalculate and pay people to make up stuff to "look busy". But, if you come even close to getting it right, it pays, too, and sometimes quite nicely.

        If you're half as skilled as you make out to be, you can follow this path, and make better money than your graduate peers in as little as 5-10 years. You can be independently wealthy (retired, never work again) in as little as 20 years.

        That's the American way.

        Do you want to be the kind of person who mopes when you can't afford your own private plane for at another year? Do you want to be the kind of person who ends up paying more in "recreation" than most people earn in their jobs? Do you long for the stability of knowing you can never be fired, because you're not only the boss, but the owner of the business?

        Take your skills, and find a way to market them. A business license costs around $50 in my home town of Chico, CA. A fictitious name statement and accompanying bank account can be had for around $300 most places in California. Everything after that is up to you.

        When you take the time to dissect business models to see which works for you, you grow in ways you can't easily convey. When you shoulder the responsibility of keeping the show running, even when your cashflow is bleeding red, you become a bigger, more capable, and more powerful person. When you run the show, you become a bigger, better, more capable, more responsible person in ways that years of college can't even begin to approximate.

        I strongly recommend that you turn your frustration into success, and turn your own personal lemon juice into sweet, refreshing lemonade!

        Once you've done this, the whole idea of a "job" just seems... well... stupid...
        • I completely agree with your take on this job "crisis" - and I am an actual example of how it can be done!

          I had a passion for programming since I was 10 years old and as other posters have said, that makes all the difference. I have been working independently in the industry for only a year now - my work consists of a wide variety of programming: C++ development, web programming work (PHP / MySQL), and other programming related work. At this time I do not have a formal education and I was never even asked

        • by FredFnord ( 635797 ) on Sunday April 23, 2006 @01:04PM (#15185265)
          I'll be glib. I'll be gleeful. And I'll be right.

          Glib, and gleeful. And right for you. And a bit, sorry to say it, self-centered, because you assume that something that would work for you would work for anyone. There are people who are comfortable doing this sort of thing and people who aren't. And if you aren't, you're not going to succeed at it. And of course, the possibility of doing this sort of thing depends on not too many other people doing it.

          Make your own damned job. It's the American way. Start your own business, hang a shingle, make some sales, do some cold calls. It hurts at first, contracts don't come with a 401k. But, pretty soon, you get the whole customer-relations thing figured out. Then, not too horribly long after that, you get the whole tax/accountant/bank thing figured out.

          If you're lucky. And you're cut out for that kind of thing. And you're lucky. And you're not in a market that's oversaturated with people who can do what you can do. And you're happy to work fifteen hour days, seven days a week, at the beginning at least, because that's what it's going to take to satisfy some of your more demanding customers. And you have enough money to get you through the first year. And you don't accidentally alienate your first employer though not doing something they assume you will know to do, because you're not experienced. (Pleading inexperience doesn't work; they only want people who are experienced.) And you don't get a company that signs a contract and then doesn't pay you for eight months after you finish the job, when you can't really afford the time and money to sue the hell out of them. And you don't get companies that make you give them a cost up front and then continually add features while you're working. (I lost two clients that way, because I told them I wasn't going to put in extra work that wasn't in my contract for no extra money, and they said, 'Well, then, I'll find someone who will.')

          And the sorriest thing is, you only get a chance to run into those problems at all if you're lucky, or at least not unlucky.

          It's really the smugness and superiority that drive me nuts. 'It was right for me, obviously it's right for everyone!' I've tried it. It's hard, it's nasty, and it's not a situation that fits every personality type. I made it okay for a couple of years, but I was delighted to return to a job where I was working 40 hours a week for decent pay and had health insurance that couldn't be cancelled (three times) for no reason other than a single, low-cost, low-mantenance health problem. I like to have a social life that doesn't require me to choose between it and sleep on any given day. I like to have coworkers to interact with, and to ask when I have a problem, and to go out to lunch with. And God, do I hate billing.

          Perhaps this is the business model of the future: work 15 hours a day every day with no health insurance and no guarantee that you'll actually be paid before you starve to death or else you won't have a job at all. If it is, I will probably live through it for as long as I decide it's worth living through. But don't try to sell it to me as some kind of goddamned paradise because I know what hell looks like.


  • Yeah, too much CNN (Score:5, Insightful)

    by ( 960072 ) * on Saturday April 22, 2006 @06:37PM (#15182182)
    You're way too caught up in picking a career by the "current market trend". If you're great at what you do, there will always be a market for your skill set.

    If the current trend of outsourcing has you scared, what about other adverse situations? What about the next recession; are you going to run back to school and become a CPA? I'm suspect that you have a deep love for programming. When you love development, you feel it in your bones; you think about problems on your lunch break, you stay up until 3am to get that last bug worked out. If you don't have this sort of passion for creative logistics, then maybe you should reconsider other options (because you're likely to get burned out fairly quickly).

    Jim [] -- A workout plan that doesn't feel like homework.
  • Up, not down (Score:5, Insightful)

    by Marlow the Irelander ( 928776 ) <> on Saturday April 22, 2006 @06:37PM (#15182183) Homepage
    As I understand it, IT employment in the US is increasing, not decreasing; you'll have a better chance if you develop skills in things like project management rather than just being a code monkey.
    • Re:Up, not down (Score:2, Insightful)

      skills in things like project management rather than just being a code monkey

      Yes, but the items in /dev/staff are the trickiest to keep running of all.

      Hence the fact that /dev/staff/phb makes more money than anything in /dev/staff/code_monkeys

      There is no shame in honing your skillz in /dev/staff/code_monkeys for a while before

      mv /dev/staff/code_monkeys/ok_this_is_getting_tedious /dev/staff/phb/is_my_lobotomy_scar_showing

  • Young People. (Score:5, Insightful)

    by sglider ( 648795 ) on Saturday April 22, 2006 @06:38PM (#15182187) Homepage Journal
    I am one of those young people. I'm finishing up a stint in the Army, and going back to finish my final year of my BS in Computer Information Systems. ( I was mobilized during my senior year of college.)

    I firmly believe that there is plenty out there for me -- but not in something like programming, rather I believe my talent lies in being a Systems Analyst for a business, or something both technical and managerial in nature.

    Sure, the off shore folks have us beat when it comes to programminng, no doubt about that -- but that's only a problem if you want to be just a programmer.

    They still need people to lead and manage these teams of programmers, and perhaps that's where the value of the American IT professional is.
    • by Gramberto ( 738223 ) on Saturday April 22, 2006 @06:58PM (#15182273)
      Computer Science, computer engineering, and electrical engineering are far more powerful degrees. They are also much hard than IS. I took some IS classes to learn some new things at a local state college. I thought the classes were a joke. The classes were easy. There was no low level theory at all. No you will never directly use the theory, but if you understand the concepts its much easier to grab a book and learn the practical stuff on your own. The same school has very hard computer science courses.

      Even if you want to be a network engineer. You will learn ALOT more with a computer science degree. You can then do a minor in information systems and take a few classes that you are interested in.

      Computer engineering is probably the most valuable to employers. The reason is that the barrier to entry is higher. For a network administrator or a programmer you can learn it without school. You really can't learn computer engineering without school.
      • They are also much hard than IS. I took some IS classes to learn some new things at a local state college. I thought the classes were a joke. The classes were easy.

        ... I'm guessing English 101 wasn't one of the classes.
      • How many companies out there are doing real computer engineering or even computer science? Most programming or other IT jobs are simply hooking up technology to get it to work in the business or writing software that adds and stores data or writes reports. Few professional programmers will really engineer anything.
        • by joekampf ( 715059 ) on Saturday April 22, 2006 @07:25PM (#15182359)
          No, most of us with our CS degrees are not creating the next processor, or the next programming language or OS. However, what I have found to be invaluable, and what makes ME more valuable than the masses of IS majors or even the offshore/inshore cookie cutter programmers out there is that I understand what is going on under the covers. So when I decide to use a feature, or create a system, I'll know how it will scale, what the implication are when the damn thing is running on something other than my desktop. I can't tell you how many developers out there have no idea about things like, threads, transactions, I/O, networks. What can go wrong when those things break or are not handled right and what that means to the system they are developing. Thus you get crap that has to be restarted every day, or isn't robust.
    • Re:Young People. (Score:4, Insightful)

      by ClamIAm ( 926466 ) on Saturday April 22, 2006 @07:19PM (#15182336)
      Sure, the off shore folks have us beat when it comes to programminng, no doubt about that ...

      Sure, managers and PHB-types might think it's a great idea to outsource programming. By doing this, you can get a similar-quality "product" for a much lower cost. But it's not all roses and cherub farts.

      Programming is hard. There have been countless times where a project has not met the needs it was supposed to, and this often has to do with poor communication. Now throw in a few thousand miles difference from the customer and the coders, a time difference and possibly a language barrier. Is this going to make it easier to get what you need? The chance for miscommunication here goes up a huge amount. What also gets worse is turnaround time. The factors I've mentioned will definitely slow down some parts of the development.

    • Sure, the off shore folks have us beat when it comes to programminng, no doubt about that --

      You haven't worked at a company that has used offshore developers have you? The only way they have the US beat is in price. The quality of code churned out by offshore dev companies is notoriously poorly written and even more poorly tested.

      Have you ever heard someone praise the quality of code they received from offshoring? No one I know in the industry has, the only people happy about it are the bean counters an

    • Re:Young People. (Score:5, Insightful)

      by El Cubano ( 631386 ) on Saturday April 22, 2006 @07:26PM (#15182364)

      I am one of those young people. I'm finishing up a stint in the Army, and going back to finish my final year of my BS in Computer Information Systems. ( I was mobilized during my senior year of college.)

      You have a couple of serious advantages that your peers (other recent college grads) simply don't have:

      • Employers know that you are disciplined (that is a given based on military experience)
      • They know you are already well trained (it doesn't matter at what) and apt to learn since you had to go through a good amount of training for your MOS (unless you happen to be a cook or truck driver)
      • You probably have a security clearance (even if it is just a Secret-level clearance)
      • You are probably more mature (in terms of age, where the people graduating with you are likely 22-23 years old, you are probably 25-26 years old), which makes a difference in how potential employers view you

      In summary, you have nothing to worry about. Same with others in similar situation to yours. The moral of the story, if you want to be better off in the job market, consider a 3-4 year hitch in the military. Even if you are not in IT, the added experience will be a huge benefit and establish a track record that you can show to future employers.

  • by beheaderaswp ( 549877 ) * on Saturday April 22, 2006 @06:38PM (#15182189)
    Well, my experience has been that offshoring has had little impact on my business, which is security, deployment, and maintenance of internet facing computers.

    I do a little coding. Some stays in house, some gets GPLd.

    But from a services perspective, most of my clients have migrated to my company because we don't have tier 1 tech support, we have engineers- and our customers *hate* doing business with a company that offshores their support or engineering staff.

    Every single client I have is a refugee from a services company with offshoring. Every Single One. They pay more... some times a lot more... for the services we provide. But we are also a lot more accountable to them.

    FWIW- I've been successful in making a good living by being the opposite of the offshoring trend. But I think to make this work in the market place you have to run your own little business rather than seek employment from someone else.

    On the down side- prepare to be awoken at 4:30am by a client calling your cell phone... because you have the shift... and both of your other engineers are in the Bahamas or Canada vacationing.
  • IT. (Score:5, Funny)

    by Anonymous Coward on Saturday April 22, 2006 @06:39PM (#15182200)
    IT: run as far away as fast and as you fucking possibly can.
  • by deanj ( 519759 ) on Saturday April 22, 2006 @06:39PM (#15182202)
    Don't worry about what CNN is saying. They're not programmers. If you're a decent programmer, you'll always have a job.

    Here's the bottom line, though:

    If programming is something you love to do, then do it. If it's just something you want to do because you've heard it'll earn you "big bucks", don't.

    Not that you can't make a good can. It's just that unless you love something, you shouldn't go into it. You might be able to handle it for 10 or even 20 years, but unless your heart is really into it, you'll regret it long term.

    Good luck.
    • If programming is something you love to do, then do it. If it's just something you want to do because you've heard it'll earn you "big bucks", don't.

      By the same token, don't confuse "programming" with "playing computer games 21 hours a day".

  • by crhylove ( 205956 ) <> on Saturday April 22, 2006 @06:40PM (#15182206) Homepage Journal
    And you'll be useful to somebody. Get really good at something, and you'll be useful to everybody. Almost doesn't matter what field. Whatever it is you REALLY enjoy, there is a way to make money at it, and a way to make yourself valuable in that field. In fact, if you REALLY enjoy it, create something new and market THAT. That's the way to make real money. I don't know anybody who makes a lot of money solely based on their education credentials. I'm sure they exist, but that breed is becoming rarer and rarer.

  • Outsourcing (Score:3, Insightful)

    by Metabolife ( 961249 ) on Saturday April 22, 2006 @06:40PM (#15182209)
    Most of the programmers I see working in the US have something to go along with the CS major. Having an english degree with the CS degree, for example, makes you multifunctional and can specialize your work (real world example).
  • I have worked on a number of software projects and the kind of projects that end up being real success stories usually have very tightly knit client/developer contact. Many of our projects (I work for a firm that writes custom web and windows applications on the small to medium scale) have weekly client meetings, initial face to face introductions, and after-deployment training and handshaking. Its cheaper by the hour, but the end/net result of using outsourced labor for programming ends up being a wash, or
  • by Heretik ( 93983 ) on Saturday April 22, 2006 @06:46PM (#15182229)
    if your primary concern is writing software and getting a job making money doing so. You want Software Engineering.

    I suggest you do some research into what Computer Science actually is before assuming you'd like to go to University for it, because if you think you'll spend the majority of your time programming, you'll be unpleasantly surprised (The obscenely high first-year dropout rates of Computer Science programs are due mostly to this misconception)
    • by NitsujTPU ( 19263 ) on Saturday April 22, 2006 @06:59PM (#15182275)
      I don't know about that.

      I'm getting a PhD in Computer Science in the Fall. I earned by B.S. in 2001, and started up as a software engineer at a defense contractor after that. Right now, I'm a researcher at an Ivy League university's Computer Science department. I write software, and lots of it, to support my research.

      Largely, Computer Science can be divided into:

      *Wildcard (but, usually people say "Artificial Intelligence" here)

      As for undergrad CS, I'd say it's mostly programming and theory, with some application specific stuff thrown in (databases, artificial intelligence, robotics, games, graphics).

      My first year was entirely programming, and, that's what incoming freshmen can expect here. I think that what drove people out is that it wasn't networking, configuring computers, "IT" stuff. They also didn't like that it was hard. They were "good with computers," but that didn't make them programmers. The first couple classes are weed-outs to make sure that they won't hate programming too much their sophomore year and feel stuck when they're in their junior year, having only done the requirements to declare for computer science, and need a whole mess of classes to jump into Mechanical Engineering or Chemical Engineering.

      Most of the people that I know who majored in Computer Science became programmers when they got out of school, and I know relatively few schools that offer "software engineering" as its own major.

      I say this with all due respect to you, but, seriously, I don't think this is very good advice at all.
      • As for undergrad CS, I'd say it's mostly programming and theory, with some application specific stuff thrown in (databases, artificial intelligence, robotics, games, graphics).

        As a person with a Bachelors in Computer Engineering, I can tell you that the first year of my major or the Computer Science major (which has the exact same classes the first year), is mostly about Math (Calculus), Science (either Chemistry or Physics or both), Electives (e.g. Humanities/Social Sci) and Intro to programming classes
  • Sigh (Score:5, Insightful)

    by NitsujTPU ( 19263 ) on Saturday April 22, 2006 @06:46PM (#15182231)
    Do this with your future: What you want to do with it.

    Do you really feel so tied down that you have to choose your career based on current trends? The trends won't last through when you finish your degree. Do you think that people who started their BS during the dot com boom made a dime of the millions that people made hawking their crap?

    Seriously, pick a career based on what you want to do. You'll be a happier person for it.
  • by cryfreedomlove ( 929828 ) on Saturday April 22, 2006 @06:50PM (#15182237)
    I am a hiring manager in Silicon Valley. There is a shortage of great talent among the IT work force. In the last 12 months it has gotten harder to hire great talent and there is a definite salary inflation situation going on right now because most great candidates are seeing multiple competing offers.

    Do IT only if you love it.
    Consistently renew your skills. Commit yourself to a lifetime of learning new tech.
    Live where the jobs are (e.g. San Jose, CA or Austin , TX).
    Find a business where you are excited to apply your skills.
    Avoid arrogance and treat people well.

    Do these things and you'll always be in a high paying job.
    • by Anonymous Coward
      I totally agree. I code in the valley, and there are tons of jobs now. Only problem is housing prices around here are too high to justify staying in this area. We are looking to leave - go to portland or something.

      But if you're down with living in an apartment and making a decent wage, it's looking really really good.

      (You'd have to make about $250,000 to even look at decent house in the bay area (not to mention have $120,000 in cash for the down payment) - while the pay around here is good, it's not that go
      • by NitsujTPU ( 19263 ) on Saturday April 22, 2006 @07:24PM (#15182354)
        Everything that I hear says that Portland's a good deal. The area is heating up a bit, and you can still get a house at a good price. If you can hop on a developing area, and then ride that rising tide, that's the way to get ahead financially (if that's your goal). It's also nice to be in an expanding area, and an expanding (or new) business.

        I think it's all a matter of taste, but if I weren't floating around stodgy old academic institutions, I'd be looking at shiny new tech companies.

        I'm not industry analyst, but I'd say that you're right on the money.
  • by LowneWulf ( 210110 ) on Saturday April 22, 2006 @06:51PM (#15182241)
    I wouldn't worry. Sure a lot of even development tasks are being farmed out to India or China. But there's still more than enough demand and competition for the top CS graduates to ensure a healthy and lucrative career.

    My only advice is to get a good education, and build a good resume while you can. If you spend 6 months getting a certification-of-the-week, write a little text adventure in Visual Basic, then wonder why you're not getting six-figure salary offers to start, you're probably next on the list to be outsourced. If you've got a CS undergrad degree (or better yet, a master's degree) from a top school, then people are going to be literally fighting over you, and I don't see that changing anytime soon.
  • IT is still worth it (Score:3, Interesting)

    by Wiseleo ( 15092 ) on Saturday April 22, 2006 @06:52PM (#15182243) Homepage
    One one hand we have rapid education growth globally, on the other we have rapidly growing complexity of technology.

    My prediction is that as we get out of the Bush dark ages, corrective measures will be passed to stop certain forms of offshore activity. Additionally, consumer backlash is very real these days and as the requirement for high level technology rises in general so will the demand for those who can make it work correctly.

    A lot of companies are in fact abandoning or at least reconsidering their offshore initiatives. I have several clients who have offshore operations and they are scaling them back and bringing some of that work back home.

    Why is this important? I support a product called Microsoft Small Business Server 2003. I am one of the leading experts on this product today. It is something you can literally buy off the shelf and setup easily. One would think that is the end. :-) SBS2003 is comprised on Windows Server 2003, Exchange Server 2003, SQL Server 2000, Windows Sharepoint Servers pre-installed, ISA 2004 Server, and a few sophisticated web applications. Some clients also add other stack components such as Small Business Financials and MS CRM 3.0 Small Business Edition.

    In translation, that means that we sell a $4700 application suite for $1500. These are full products that require enterprise expertise to use them. Small Business Financials is a friendly name for Great Plains (yes, THAT, Great Plains), and MS CRM 3.0 Small Business has no feature limitations on itself either besides the maximum number of users.

    If you take a typical small business owner who uses Quickbooks and throw them into this environment, they are lost. Make no mistake, they demand these applications from us and they do love them when they are customized.

    I think the next era of highly complex networks is about to begin. A competent software developer specializing in making this process easier will make a killing. I know how much money my company is set to make this year and I am truly amazed at just how many untapped markets there are. :-)

    There is a lot of opportunity in IT, but I think you have to own a business to truly succeed. Working for someone else will not make it happen. That means, take some basic business courses in addition to IT when you have the opportunity.

    Good luck!
  • by daeg ( 828071 ) on Saturday April 22, 2006 @06:52PM (#15182246)
    The best advice I can give you is have stunning writing skills. You will be writing every day. E-mail, IM, proposals, agendas, reports and presentations are part of any job, even if they are a small part. Some companies don't care if you have good writing skills, but no business will complain if your skills are higher than they want.
  • by autophile ( 640621 ) on Saturday April 22, 2006 @06:55PM (#15182260)
    All of this is, of course, IMHO.

    "Programming" conjures up visions of some guy with pale complexion staring into his monitor, banging away at the keyboard, trying to fix yet another bug. Or, in a better light, maybe reading some API and/or design specification and banging away at the keyboard trying to implement it. A "programmer" can be thought of as a construction worker.

    "Software Architect" is what you get when you take away the specific implementation: the programming language, the operating system, the specific database. What you're left with is the high-level big-picture design. You get to draw boxes, arrows, flowcharts, ping-pong diagrams... you get to be the guy up at the marker board smiling at the camera, pointing to a complex diagram, your vision for the product, that you don't have to spend nights implementing because that's what they pay the keyboard-bashers for. A "software architect" can be thought of as the high-paid and lauded building architect.

    In a sense, software architecture is the creative side, while converting the design to code is the mechanical side.

    I'm not even sure you want to talk about "going into IT". I thought IT was more like the maintenance guys of the building after it's built. Like in the UK's "The IT Crowd". It certainly wouldn't be as rewarding to me as programmer or software architect. In any case, even if all this does fall under the general heading "IT", you can at least narrow down what you want to do.

    Anyway, what's this have to do with outsourcing? I think software architecture is what you want to get into, since I firmly believe that is what the US is not going to outsource -- or at least not to the extent that keyboard-bashing has.

    That being said, it definitely doesn't hurt to know at least one major programming language -- either Java, or (shudder) even C#. That way you at least have some idea of the common idioms of the code, and then you don't have to specify every nut and bolt in your diagram.


    • by leabre ( 304234 ) on Sunday April 23, 2006 @05:13AM (#15183911)
      Your idea of a software architect is flawed. I interview people for a Sr. Developer position that says that are also an architect. Problem is, in over a year, we haven't found a single person that knows what software architecture truly is and it sounds like you don't either.

      Is software architecture all about flowcharts and design specs but the architect not a competent programmer? Not in my shop (we make insurance and accounting software). A truly competent architect will be deeply acquainted with various design methadologies, techniques, tips & tricks for that various technologies/paradigms being implemented, industry trends and will have been through quite a lot in the trenches before they can truly design a system like ours that scales to tens of thousands of concurrent users daily and millions of financial & non-financial transactions per day.

      We get applications that think they are an architect because they know what the Factory or Strategy patterns are but can't write explain or write code that explains why one would use a quicksort over a bubblesort or why one would use a list traversal over a binary search for finding sorted information. The same people say they are competent in distributed architectures but can't explain when to use SOAP and WebServices instead of a custom TCP/IP server or how a message-based system works. They can't explain the difference between a Factory and an Abstract Factory or any suitable definition and implementation of the Provider and Observer design patterns. I'm not talking about rocket science. I don't expect my architects to be one with design patterns but if they put on their resume that they are expert with patterns they better impress me regarding that topic.

      The same people can explain the difference between .NET/ASP.NET and Java/JSP but can't come up with any good comparitive strenths/weaknesses between both. The same "architects" know very little about clustering and load balancing but somehow feel competent in designing systems that scale to potentially millions of users.

      They can't explain (or more importantly, demonstrate) very well how to both invoke and prevent against cross-site scripting attacks and SQL-Injection attacks alike. While a few applicants appeared to be well acquainted with preventing SQL injection attacks neither could write code that has the vulnerability or explain certain practices/mindsets that can contribute to both the cause and the solution to the problem. When asked how they would design a destributed component over a network, they would write "chatty" interfaces and thus, consume more resources, network bandwith, and impede performance and act surprised when asked if there was a better way.

      Many have the attitude that they know everything and what they know is how they'll do anything. While not wrong if they are truly that competent, in general, a good architect will be open to new ideas and will refuse to lock themselves into a box. I don't want a COBOL architect on my team that hasn't opened their mind to newer ideas and methadologies, more importantly, an architect that full well is aware they don't know everything and always double-checks and verifies their designs/ideas are the right way vs. assuming such is the architect that gets my praise and will have the best success anywhere they go.

      When asked to about transactional system (both at the database level and at via compensating resource managers for non-database transactions) only one demonstrating any understanding of the topic, problems, concerns, and good design skills relating to the topic. Others had simply avoided using transactions for the past 15 years of the "architectural" career. They don't udnerstand the nature of insurance accounting, and related banking, I suppose. About all were uncomfortable discussing transactions and transactional systems/concerns during the interview (to their defense, no one ever made a point of it on their resume either, at least; the one guy who did was truly amazing
  • by Mustang Matt ( 133426 ) on Saturday April 22, 2006 @06:56PM (#15182263)
    The offshoring problem is grossly overexaggerated and all it does is separate the men from the boys.

    That being said, I would focus on doing something you enjoy regardless of money. It makes the difference in life. I bet a lot of people claim to enjoy their job on here, but I bet a lot of them are lying about it. Usually the money makes these jobs worth tolerating but working in a "the office/dilbert/office space" style environment is detrimental to the soul.
  • The consensus here, and my opinion, is that if you just want to be a generic programmer, yeh, India will screw you over. But the great thing about computer programming is that it is an applicable science in so many other fields that being just a programmer is shooting a little low. Example: By taking a few more engineering classes you can become a "Software Engineer" which is one of the fastest growing fields out there. IT is fine, it's just being satisified with knowing a language or two that will get yo
  • by RyoShin ( 610051 ) <> on Saturday April 22, 2006 @06:59PM (#15182278) Homepage Journal
    I'd say you do have a future, but you have to actually work for it. Too many programmers think that their years of Visual Basic and HTML mean they can truly code, and too many people used to just Windows AD get shunted into the field.

    At a non-profit I worked for as an intern, I was under three different head admins in a year and a half. The first guy was pretty good- while he didn't know everything, he could do the common stuff and figure out other things as they came around. After he left (he worked for a company that contracted out per-yearly) he got replaced by a guy who was lazy as all hell. I, the intern, had to remind him about such things as ping and ipconfig. He was also lazy, and got canned soon after starting. The third guy was alright, but also lacked some common knowledge, despite years in the field.

    In short, don't limit yourself to what you know. Don't learn one programming language, learn five. Know how to administrate in both Windows and Linux/Unix. The things that are being offshored are helpdesks and jobs that don't require heavy expertise. Make yourself useful, and you're made.

    You could also try going into some "different" areas. I have a year or two before I graduate as a CS major, and I'm thinking about being a computer forensics guy. With the increase in crimes done through or related to the internet, there's a growing demand by law enforcement, both local and federal, for people who can get into confiscated computers and retrieve deleted files. If not with the police force, I could work as a private detective, contracting to large corporations when they get hacked to trace it and try to find the perps.
    • If you want to make yourself good for the IT industry, don't fall back on just being able to whip up a 1000 line C file in an hour.

      These days, you have to make sure you have good communication skills. You could be asked to write proposals for getting new technology, or reporting something. If your grammar and spelling skills are amiss, it will reflect very poorly on you.

      At my college, which is engineer-geared and thus tosses most of those useless classes, CS majors have to take one more literature/humanitie
  • by canuck57 ( 662392 ) on Saturday April 22, 2006 @07:00PM (#15182280)

    As a young person considering various choices for the future career...

    There are far too many people in this I/T business for the wrong reasons. In part, because there is a shortage and a marginally compentant employee is better than none is a currently accepted norm. That being said, your career is a life long endeavor. Those that succeed to the top in any profession have one thing in common, a passion for what they do.

    So if you pick a profession and don't have a passion for it and then become a mushroom in a chair do not blame the business... blame yourself.

    So before you pick a career, ask yourself will you do it with passion?

  • Go for it (Score:5, Interesting)

    by Derkec ( 463377 ) on Saturday April 22, 2006 @07:01PM (#15182284)
    If what you're interested in is computer programming - go for it. Money magazine just ranked 'Software Developer' it's top job largely because of expected growth in the field. That said, be sure that you can write and speak well. Your key advantages over someone in India should be:
    1) Timezone
    2) More experience (developers there are often promoted to management too quickly)
    3) Superior command of English (they'll speak it, you need to do so better)
    4) Assorted cultural advantages

    You will need to be able to talk to people and sort out requirements to be more valuable. The guy in India just can't sit across the table from a user of whatever you are making and discuss options, quickly estimate 'lots of effort' or 'pretty easy', and help the users tell you what to create.

    At the end of the day, you'll still need to be able to write code, but you'll need to do a whole lot more as well. These days, I'm thinking that the 'whole lot more' may be more fun, but that's just me.

    As for the guy who joked 'speak hindi', I'd point out that there are dozens of languages in India and when Indians from different parts of the country speak to eachother, they usually do so in English.
  • Career choices (Score:4, Insightful)

    by bytesmythe ( 58644 ) <> on Saturday April 22, 2006 @07:02PM (#15182285)
    I've noticed a number of problems with IT as a career choice. Back in '97, I graduated with a degree in computer science and started working like everyone else. I hopped from job to job for a number of years. The longest I stayed at one place was about a year and 4 months. After a while, I finally realized my problem. I absolutely hate working in IT. There are a number of reasons why. I'm not saying that these will apply to you or anyone else, but if you feel they do, it might be a good indication that IT is not the field for you.

    1) I can't stand having to work on other people's stuff. I don't like being given assignments that I'm not interested in and having to complete them. I'm sure people with stronger "work ethics" can force themselves to muddle through, but I'm not going to do it. Worse, there are a lot of mundane administrative tasks (like timesheets, etc.) that have to be dealt with. If I'm working for myself and getting paid based on those things, it would be different, but it always just seems like a waste.

    2) Having to constantly keep up with new technology got kind of old for me. I like low-level programming in C. I don't really care for web apps and such. I tend to find the various frameworks overly complicated for no apparent reason. Most places I've interviewed with want to see lots of solid job experience with particular technologies, which can be difficult if you weren't working somewhere that used it. .NET is the newest example I can think of.

    3) "IT" type programming isn't very interesting. I would rather work on low-level stuff, simulations, academic problems, etc. I don't really care a bit about data migration, or making loan payment GUIs, or whatever. There's relatively little problem solving to be done, which is the whole reason I liked programming in the first place. Instead you get handed some half-assed specs and spend all your time chasing people down to figure out what needs to be done, even though none of them really know or have the authority to decide. That's when the meetings begin.

    4) Did I mention meetings? I hate meetings. I can't decide if conference calls are worse or not. On one hand, you can mute the phone and make faces, but on the other, it's frustrating to have to listen to people you can barely hear, deal with flaky connections, etc., and you still have to pay attention because someone will certainly end up asking you a question.

    5) Outsourcing. Not just to foreign countries or migrant H1-B visa holders, but to any third-party contracting group. There are several problems with this. Many times, consulting companies (Accenture) will put people on a project who have never programmed before. They don't even have degrees in programming. The consulting company will use a project to train them. It's real fun explaining what recursion and stack overflows are to someone on a major project.

    6) If you ARE a contractor though, you might be in luck. You're more likely to get to work with newer technology, so it's easier to stay ahead of the curve. From what I've seen, full-time employees tend to have to work on maintenance rather than new development.

    Right now I'm transitioning out of IT as a career. I'm still working, but as a training consultant. It pays enough that I can finally risk going into business on my own. (A non-IT business at that!) The only way I'll ever feel motivated to put effort into a "job" is working for myself. I'll never give up computers and programming, and will pursue it as a hobby (and possibly as an academic career in the future) for the rest of my life.

    But work in IT in the modern business world? No way.

    • Re:Career choices (Score:4, Insightful)

      by Kjella ( 173770 ) on Saturday April 22, 2006 @08:08PM (#15182499) Homepage
      1) I can't stand having to work on other people's stuff. I don't like being given assignments that I'm not interested in and having to complete them. I'm sure people with stronger "work ethics" can force themselves to muddle through, but I'm not going to do it. Worse, there are a lot of mundane administrative tasks (like timesheets, etc.) that have to be dealt with. If I'm working for myself and getting paid based on those things, it would be different, but it always just seems like a waste.

      That sounds like working in any reasonably sized company in any position. I think you will find that even working for yourself you have to do a lot of work that isn't interesting, but the authorities or your clients demand it. Timesheets are annoying to track in any case but unless you track time and see which assignments are winners and losers your business will fail quite quickly, not to mention you normally need it for invoicing.

      The rest of the points are fairly on target, but if that's your 1) reason to quit, good luck. My experience is that the grass isn't greener on the other side. I went from being independent (co-owner) to working for a major company. Why? I know what my paycheck will be, it's not stellar but it's predictable. I get to do more of what I want to do - in a small company everyone's a handyman where needed. And at the moment, I feel a slowness in work is more my boss' problem than mine, because I know I have specific skills they need and can't make anyone else cover for. I could imagine trying to make it on my own again, but then I want to have what I consider a sure-fire winner. Going out there again just to have all my clients be my "boss" instead of the one I have? No thanks. It's not all it's cracked up to be.
  • by jellomizer ( 103300 ) * on Saturday April 22, 2006 @07:03PM (#15182287)
    I would suggest that you take a Supplemental Major/Minor with your Computer Science Degree. Things like Computer Science/(Business, Engineering (Non Computer Engineering), Physical Sciences, etc...) That way your skills are targeted beyond just a Programmer but to a professional who is useful to your future employer on multiple levels. You can easily outsource a Programmer, but a Programmer who understands something else the business needs is much harder.
  • CNN and College (Score:5, Insightful)

    by pete-classic ( 75983 ) <> on Saturday April 22, 2006 @07:07PM (#15182301) Homepage Journal
    It's laudable that you are concerned about college, but you have the rest of your life to worry about job security. On the other hand the days in which you may bang 17-year-olds are numbered. Get your priorities straight.

    • Re:CNN and College (Score:3, Insightful)

      by nEoN nOoDlE ( 27594 )
      It's laudable that you live your life to the fullest with no worries about tomorrow, but he's got the rest of his life to worry about.

      As one of those people who worried about college when I was in high school, did well in college because I wasn't out getting drunk every night "living life to the fullest" and now have an awesome job that I love shortly after graduation and now have money to burn on alcohol and women while most of my graduating class doesn't... I'd say his priorities are pretty straight.
  • by Faramir ( 61801 ) on Saturday April 22, 2006 @07:17PM (#15182331) Homepage Journal
    At least in the Twin Cities, if you know SQL you're golden right now. Desparate shortage up here. My company has been searching for someone since January, with very few applicants, and even fewer qualified. The only two who were qualified turned us down for other offers. I came from Austin, TX, where I had spent 3 years looking for a new job. No luck -- too much competition from laid off workers. But up north there is high demand for C#, Java, SQL. Even finding a straight up, skilled HTML guru is difficult here.
  • IT is fast becoming a commodity which is broken into various specialties e.g. (Desktop Support, Mobile Computing Support, Help Desk, Database Administration, Server/Datacenter Support, Network Support, Installation/Migration, and Application Development). The suits now seem to have a pretty good idea what's inside the black-box known as IT and are willing to outsource any piece they feel can save money.

    The trick to longevity in IT is get good at a variety of things and keep moving around. If you can avo
    • Yeah, what he said. There is more to I.T. and Computer Science than programming. I am one of those insourcing consultants. We do just about anything and everything for customers related to I.T. One of the reasons we are more valuable than having a separate developer, network administrator, system administrator, security specialist, and technical support agent is they only have to go to us for all of those services.

      We don't pigeonhole ourselves, the more services we offer, the benefit to the customer inc
  • I will tell you straight up that there is one section that will always need programers and IT specialists which will never outsource them, government defense contractors/industry. These jobs can not be outsourced, plain and simple due to the nature of the products. If you are worried about having your job outsourced, go find a job at one of the big contractors, Lockheed Martin, Boeing, Northrop Grumman, etc. The other place you will always find a job is in the government itself, local, state, or federal. Do
  • The net will get bigger. Pie will get larger for everyone. New net businesses will not all ship jobs overseas. India and China will also become consumers which will create more jobs.
  • Too much Lou Dobbs (Score:3, Interesting)

    by crmartin ( 98227 ) on Saturday April 22, 2006 @07:24PM (#15182353)
    The fact is that the offshoring fad is fading as people find out that it's not the cost per line that matters if you aren't getting the code you need. I'm engaged in helping save a project that went down that path too far; we got lots of code, it didn't do what was needed. We now hope to recover some value, but all development has moved back to the US, where we can interact with the customers in real time.
  • I have an associates in IT and a bachelors in business management. That way if IT jobs go away, I can work for almost any business as a manager. I minored my bachelors in IT. Make sure you pick a good minor as well as a major.

    My advice, go to a community college first and pick up some certificates and an associates and then move on to a bachelors and masters. A lot of the people out of work in the IT field lack the degrees. Companies want to hire degreed people with experience and many have the experience b
  • by Jerry Coffin ( 824726 ) on Saturday April 22, 2006 @07:35PM (#15182387)
    As a young person considering various choices for the future career I'd like to pursue, IT and computer science continually reappear near the top of the list of fields I'm interested in.

    I'd say that if both are showing up, either the testing methodology is a mess, or else you need to give considerably more thought to what you really want. At least IMO, the mindsets needed for IT and computer science are enough different that almost no one person is likely to be particularly good at both.

    IT mostly involves applying existing knowledge. It's true that you need often to write bits of code, typically in some scripting language to apply the existing knowledge to your exact situation.

    Though the term is often mis-applied, computer science is really about research into things like algorithms, languages, computability, etc. For a true computer scientist, writing code is mostly a sideline, and the code s/he writes will often be little more than a proof of concept to demonstrate something they've invented (e.g. a demonstration implementation of a new algorithm). The code he writes will rarely have much practical applicability -- if he's demonstrating a sorting algorithm, it'll probably have a nearly unusable user interface. OTOH, if he's doing user interface research, it probably won't implement any real algorithm behind that interface.

    More or less halfway between the two is software engineering. At least as I'd use the term, software engineering is what many "computer scientists" really do. Specifically, a software engineer is somebody whose primary job is to develop software. The software engineer should be aware of what the computer scientists have invented, and (particularly) needs to have a broader perspective, to help produce complete applications including both (reasonably) optimal algorithms and decent UIs.

    From a corporate perspective, computer science falls under "research". Software Engineering falls under "development", and IT falls under operations.

    Consider a single task: doing backups. A computer scientist might deal with something like inventing a faster method for coalescing incremental updates to a file to produce the final output more quickly. The software engineers write the backup program that implements this algorithm, along with a decent UI, etc. The IT person is responsible for ensuring that the backup program is run at the right times, ensuring the correct backup media are in the drives at the right times, etc.

    A computer scientist will usually be absent-minded, idealistic and will focus on future possibilities. An IT specialist will be pragmatic, focused on the here and now, and his single largest strength will often be presence of mind.

  • by iplayfast ( 166447 ) on Saturday April 22, 2006 @07:36PM (#15182391)
    Do a job that you love. There are up sides and down sides to this but the up side is that you can enjoy going to work where you will spend a significant portion of you life. The downside is that your love may change and what used to be fun is now a chore. I was first a musician, and after 3 years on the road decided it was not fun anymore. I then went back to University and learned about computers. Luckily, I still love it 25 years later.

    Another up side, is that if you love to do something you will get better at it. This means that you will become the craftsman that people want to have working for them. Your salary will increase and you will be employed.

    A third upside is that your enthusiasm about your work will show. When you go for job interviews it will show. People feel more comfortable hiring someone who they can see has enthusiasm and a proven experience.

    The nice thing about the computer field, is that it's large enough that you can partition your hobby and work into 2 different types of work, so you don't become overexposed in the one at work.
  • The current arbitrage opportunities between the US market and other labor markets (India, Eastern Europe, China), like all arbitrage opportunities, is on the path to disappearing. I know many of you will look at bold statement with a high degree of skepticism.

    In fact, I will go even further, within 20 years labor costs will not be a factor in moving work to India, Eastern Europe, or even China.

    How do I back up these statements? Well, in my last position I was the dotted-line manager of an India team for a major software company. The 2005 raise budget for the India campus was 18%! Yes, that is correct. And this was on top of a mid-year, across the board, salary adjustment of 10%.

    Simply put, salaries cannot grow at this rate (a CAGR of 29%) for an extended period of time without coming into line with those in the US. The ratio between the US and India is no longer 1:10, it is more like 1:4 and shrinking. This is the reality of a world which is flat. Things reach a point of balance. And in this case, the point of balance is moving up.

    When I speak to companies who are doing offshoring these days, I am not hearing issues about labor costs at the front of the back. Rather, it is about finding specific skill sets and to attract people who don't want to live in Silicon Valley, the US, etc. Least you think the last point is fantasy, I personally know of a good 1/2 dozen folks who have moved to India and China (accepting local pay packages) in order to have a better quality of life (for example, household servants).

    So, contrary to what Lou Dobbs would have you believe, IT and High Tech jobs are not leaving the US for India and China. IT and High Tech is alive and well in the US and will be for some time.

    So my words to you: go for it! You will have a blast and will be able to feed your family.


    • So, contrary to what Lou Dobbs would have you believe, IT and High Tech jobs are not leaving the US for India and China. IT and High Tech is alive and well in the US and will be for some time.

      So my words to you: go for it! You will have a blast and will be able to feed your family.

      Well said. To put it another way, the really good IT workers will always have jobs. During the dot-com heyday I saw far too many people that had no business working in software. If you are only in it for the money, then you hav
  • by tlynch001 ( 917597 ) on Saturday April 22, 2006 @07:57PM (#15182473)
    Be sure you learn ajax. And get certified in web 2.0.
  • Do what you love (Score:5, Insightful)

    by ggambett ( 611421 ) on Saturday April 22, 2006 @08:22PM (#15182531) Homepage
    Do what you love. Be the best. The rest just happens.
  • by firedragon852 ( 837972 ) on Saturday April 22, 2006 @08:23PM (#15182537)
    As someone who has worked in both the Silicon Valley in the US and the Far East, I can only say that I haven't looked back the day when I stopped hiring US software engineers and moved the development center to China. For companies like Oracle etc, what they are doing now is stop hiring in the US but continue to increase their headcount in India and China. The reason is simple: US IT staff salaries are just too high to be competitive. I can get the Chinese engineers to produce the same code for 10% of the cost. Then when you look at the skills that the US software engineers possess apart from the usual technical skills, they are just pathetic. For instance, I need all my software engineering staff to be able to read and write English and Chinese. That rules out 99% of the resumes I received in the US. When I started hiring in China, 100% of the local candidates can read and write English (though not perfect). The reality is it is only going to get worse for the US IT staff.
  • by eddeye ( 85134 ) on Saturday April 22, 2006 @08:28PM (#15182550)

    Remember that an IT degree doesn't necessarily limit you to a job in the IT field. Besides the many jobs open to anyone with a college degree, you can use your technical background to move into other fields. Combine it with biochemistry for a job in the pharmaceutical industry. A solid math background is attractive to financial companies. Physics, geology, climatology, accounting, library science -- the list is virtually endless. There will always be options available to people willing and able to use their technical background outside of IT and programming.

    I went from an MS in computer science to software developer to teaching cs to law school. Law is an incredibly broad field and technical skills will serve you well in any area, not just intellectual property.

  • by chicago_scott ( 458445 ) on Saturday April 22, 2006 @09:12PM (#15182689) Journal
    I suppose the first questions to ask yourself is why you are looking at going into IT. Are you looking for a stable career? Are you looking for fortune? Do you really enjoy computers and programming as a hobby and think it would be cool to earn a living doing something you enjoy or are you just looking for any job that you can earn a living doing?

    I went into technology as a programmer/software enginner because I loved working with computers and I saw a way make a living while doing something I love. Ten years later I still love it. I've always prefered hands on development and prefer coding and on some project I like being the technical lead, but otherwise I have avoided the management-side of IT. I could make more money, but at a huge cost to my personal satisifaction.

    Why do you want to go into IT?
  • The Real World (Score:3, Insightful)

    by billybob_jcv ( 967047 ) on Saturday April 22, 2006 @10:15PM (#15182864)
    I'm an IT director at a corporation with an IT staff of ~20 people. Our IT budget is fairly small - we typically have funds for 1-3 decent sized projects per year. But, like most companies our size, we do not have the full-time staff to continue maintenance on our existing systems AND run a dedicated project team to implement a new system. We bring in an implementation partner to staff the new projects - and members of our full-time staff generally act as the project manager and as part-time technical members of the team. The dedicated project team is primarily contractors. I worked for a while as a contractor when I was younger - and as many here can testify, it is not an easy life, and not for everyone. Traveling from customer to customer all over the country, staying in one place for only a few months at a time - and always having the threat of lay-off over your head if you don't find a spot on the next project. What's the problem? There are many. The full-time staff doesn't really get involved enough in the new system implementation - they are too busy with maintenance. Tight budgets make us push the schedules too hard - because we want the high-priced contractors gone as soon as possible. The contractors aren't in-house long enough to really refine the solution to match our business processes - they try to slam it in, get paid and move on - leaving us to clean-up the messes and deal with business users who are disappointed with 80% solutions. The real-world of corporate IT is an ugly place - full of long hours & weekends, clueless corporate execs and $500K software packages that won't even install unless you spend a thousand manhours patching and tweaking code. Schools don't teach this stuff - they show you a few theories for building data models and writing compilers and send you on your way. I'm not saying a degree is worthless - on the contrary, the discipline required to complete a university program is extremely valuable and I won't hire non-degreed script kiddies. It's just that IMO the university curriculum is completely unrelated to the world of corporate IT. One of my university professors told me something that has stuck with me for 20 years: Technical people are complete idiots. We believe we have a Holy Calling to be techies, and we like being techies so much that we would do the work even if we didn't get paid. Lawyers and accountants get paid so much because they charge you just to have a talk with them. If techies did the same thing we would all be making millions of dollars!

Who goeth a-borrowing goeth a-sorrowing. -- Thomas Tusser