The Future of IT in America?
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?"
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.
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 http://www.runfatboy.net/ -- A workout plan that doesn't feel like homework.
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.
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.
War isn't about who's right. It's about who's left.
IT: run as far away as fast and as you fucking possibly can.
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 living...you 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.
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.
rhY
I hold very few opinions. I hold information based on observation and fact. If you wish to disagree, please use facts.
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)
Parent was bit trollish, but he has a point though..
Asia is currently worlds fastest growing economical area, and knowing how to speak japanese, mandarin or hindi might be rather useful.
There are no atheists when recovering from tape backup.
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.
Yeah, but if you're going to buy into that, the safest thing to do is to move out into the mountains, grow your own food, and have a really trusty shotgun. That, or move to Canada.
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.
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.
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.
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.
If something is so important that you feel the need to post it on the internet... It probably isn't that important.
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.
-Peter
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.
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.
Don't blame me, I didn't vote for either of them!
Do what you love. Be the best. The rest just happens.
My website
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.
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.
Democracy is two wolves and a sheep voting on lunch.
I'm not going to say a word about irony here. Not a word.
/.
Because I try to be act good behavior on
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.
-jcr
The only title of honor that a tyrant can grant is "Enemy of the State."
I would say that Chinese would be the best one to learn overall. The Chinese I have known tend to take it as a compliment if you speak even some Chinese.
The Japanese I have known seem to be offended, even if your Japanese is perfect. Plus, if your resume does not have you in the precise little required sub-group, they won't even consider you for a particular job. And I'm not even getting into the whole racism issue. The Chinese aren't perfect, but I've been treated a damn sight better by them than any of the Japanese I have ever dealt with.
***note to mods: This is not meant as a troll. I am simply explaining my own personal experience...
I feel like death on a soda cracker.