Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

uaecasher

macrumors 65816
Original poster
Jan 29, 2009
1,289
0
Stillwater, OK
Sorry if this was the wrong forum

hello,
I'm a high school student that want to take software engineering as a career path, i already know some scripting languages like PHP and javascript and considering to go to a university for education however some people tell me not to go to software engineer path as they claim that nowadays anyone can read some programming and system analyses (analyses, design, implementation , testing and documentation) books and be able to develop books. i don't think that these books can make real software engineers do you agree and what university teach that books don't?

my other concern is that my teacher say that software development is not as profitable and telling me to go to hardware engineering path, is it true?

thank you
 

MrFusion

macrumors 6502a
Jun 8, 2005
613
0
West-Europe
There is a difference between programming for fun (working on your own projects), understanding how computers and software work and doing it for a living. Imagine having to program someone's idea of a software the entire day long. it will take the joy of it quickly.

On the other hand, if you are technically inclined and like to program as a hobby/passion, you could chose something more engineering like. You will still do enough programming (if you want to), but not so much as to take the joy out of it. Being able to program well will get you noticed in such environments.

Despite all the advice of your teachers and us here, do want _you really want_ to do in college. Between beginning and end, there is a long time. You have to keep your motivation high, so you need to do something you really like and write down a few reasons why you are doing something.

Simply reading a book doesn't make you good at anything. It might make you believe in that illusion, but in reality it could take a decade before you start to excel at something. Also do something in which you can really shine. Everyone wants to be in the top 10%, make sure you can get there. It's much more fun at the top of the pyramide.
 

MrFusion

macrumors 6502a
Jun 8, 2005
613
0
West-Europe
Thanks for the answer.

yeah well. you better wait for some more replies, from people who actually did computer science (CS).

I choose physics over CS. I like programming, but I couldn't do it the entire day. For me, it's more a tool to do other stuff.
Also keep in mind that many people start studying something, only to find out after 4 years and a degree that it's not what they wanted or expected. So pick something that you are good at, that you really want to do and that will give you options to do something else if needed.

On the other hand, maybe you are so passionate about computers and good at it, that you end up being a professor someday.

Or it will be just a job that just do to enjoy a life outside of work.

It all depends on you, on your motivation and your willingness to work (intelligence only will not get you far in college). You will learn so much in college it will be difficult for you to guess what you will (want to) do after 4 years. You could start doing game programming and end up in ..euh... artificiel intelligence or you will hate it so much you will do ...euh... fixing antique (analog) clocks (I don't know).


Know yourself, choose yourself and choose wisely.
 

macsmurf

macrumors 65816
Aug 3, 2007
1,200
948
There is a difference between programming for fun (working on your own projects), understanding how computers and software work and doing it for a living.

This is certainly true, but it's true of many jobs.

Imagine having to program someone's idea of a software the entire day long. it will take the joy of it quickly.

This is not an objective truth. For me, it's still a lot of fun even if I do it every day. I even do it in my spare time. However, I accept that not everyone is like me (thankfully :) ).

To uaecasher:

Software Engineering is a craft. That is not something everyone can learn by picking up a book, no more than you can learn to be a cook by reading a cook book. Whoever said that don't know what they are talking about.

What does university teach that books don't? They teach you to read those books critically, and they critique your work. They also teach you the theory which is an important part of software engineering IMO. In addition, they make you do stuff that you would be unable to do yourself. For example, I recently wrote a compiler for a rather large subset of Java 1.3. I would have never been able to do so on my own (or, at least, it would have taken me years), and I learned quite a lot from it.

I do completely agree with MrFusion that you should do what you really want in college. A first-rate software developer can make a lot of money, but a first-rate lawyer can probably make more. For me, it's not about the money.
 

uaecasher

macrumors 65816
Original poster
Jan 29, 2009
1,289
0
Stillwater, OK
I like programming, but I couldn't do it the entire day.

On the other hand, maybe you are so passionate about computers and good at it, that you end up being a professor someday.

That's what motivated me to go for software engineering rather hardware because i tried it and like it and unlike you I'm sure i can sit all day in chair and work lol, it's like my dream job to put 3 screens in front of me and work all day.

and the thing u said about doing what people tell me is part of any job if you are an employee, and i don't think it as a problem as I'm a good follower and like to listen to people and i think i will do my own business after working some years for experience
 

MrFusion

macrumors 6502a
Jun 8, 2005
613
0
West-Europe
That's what motivated me to go for software engineering rather hardware because i tried it and like it and unlike you I'm sure i can sit all day in chair and work lol, it's like my dream job to put 3 screens in front of me and work all day.

and the thing u said about doing what people tell me is part of any job if you are an employee, and i don't think it as a problem as I'm a good follower and like to listen to people and i think i will do my own business after working some years for experience

What did you try about hardware? Assembling a computer from components? That is not hardware, that is factory work or computer repair work. Working with hardware is designing for example the CPU, perhaps building a prototype (probably from components the technician made), and testing it. I doubt you did anything like that in high school.

I am in experimental physics (not computational, lucky me) and I spend roughly 70% of the time behind my computer.

Many things are possible in life, and most things turn out to be different than you thought.

Don't be a follower, or you will be doing things others want you to do for the rest of your life. Follow your own path and carve it out of hard rock if you have to. Not doing something is easy, saying something is not possible is easy. Following your dream is hard, but worth it.
 

pilotError

macrumors 68020
Apr 12, 2006
2,237
4
Long Island
Get yourself a good business degree instead... Or after finishing CS, go get an MBA.

Depending on where you live, software engineering is mostly a dead end. You will have a good job that you love, but the older you get, the harder it is to find and retain a job. Age discrimination is rampant in this industry.

Having your own business is easier said than done. I've been in business for myself for the last 9 years and I'm about to give it up. The business side is where there is more opportunity and if you ultimately want to run a business, your better situated.

About half of the developers I know (if not more) left software to do other things. Two folks that I know their own bar/restaurant. Two others left to become stock brokers. Another is doing financial planning. Each of them where some of the best developers I know. It's really what the business does to you.

Not to say that there's no money in software, but it's getting harder all the time. If your looking to spin off your own business, IT support is a nice little business, installing and supporting software, networking, etc.

If you really want to open up your opportunities, get a Law Degree. It doesn't matter if you practice a day in your life, having that degree opens up options in so many areas of business.
 

MrFusion

macrumors 6502a
Jun 8, 2005
613
0
West-Europe
If you really want to open up your opportunities, get a Law Degree. It doesn't matter if you practice a day in your life, having that degree opens up options in so many areas of business.

It's unfortunate that a law degree or a job in the financial sector could make you more money than a technical orientated job. After all, it's the engineers and scientists who build the world and invent the future.
A law degree will give you many options later on, but so does physics and most kinds of engineering degrees.
 

uaecasher

macrumors 65816
Original poster
Jan 29, 2009
1,289
0
Stillwater, OK
What did you try about hardware? Assembling a computer from components? That is not hardware, that is factory work or computer repair work. Working with hardware is designing for example the CPU, perhaps building a prototype (probably from components the technician made), and testing it. I doubt you did anything like that in high school.

I am in experimental physics (not computational, lucky me) and I spend roughly 70% of the time behind my computer.

Many things are possible in life, and most things turn out to be different than you thought.

Don't be a follower, or you will be doing things others want you to do for the rest of your life. Follow your own path and carve it out of hard rock if you have to. Not doing something is easy, saying something is not possible is easy. Following your dream is hard, but worth it.

Get yourself a good business degree instead... Or after finishing CS, go get an MBA.

Depending on where you live, software engineering is mostly a dead end. You will have a good job that you love, but the older you get, the harder it is to find and retain a job. Age discrimination is rampant in this industry.

Having your own business is easier said than done. I've been in business for myself for the last 9 years and I'm about to give it up. The business side is where there is more opportunity and if you ultimately want to run a business, your better situated.

About half of the developers I know (if not more) left software to do other things. Two folks that I know their own bar/restaurant. Two others left to become stock brokers. Another is doing financial planning. Each of them where some of the best developers I know. It's really what the business does to you.

Not to say that there's no money in software, but it's getting harder all the time. If your looking to spin off your own business, IT support is a nice little business, installing and supporting software, networking, etc.

If you really want to open up your opportunities, get a Law Degree. It doesn't matter if you practice a day in your life, having that degree opens up options in so many areas of business.

@ MrFusion:

i chose the wrong words what i wanted to say is that i tried SOFTWARE that's why I'm confutable with it. and the part when i say a follower i mean by that I'm open minded and listen to advices and learn from people who have more experience than me but not to take their advice with out thinking or checking with someone else and ya i know my dreams are hard to get but i think it worth the effort..

@ pilotError:

I will study and work in US, about the age thing why will it be harder as i get older because i need to keep up with tech ? I think a person can learn and keep up with his job until the age of 65 or even more (my grandfather was working as a doctor until he aged 75), why the people u know left software? and what do you think about hardware engineering.

the part of opening a business, i know how hard it is, i had my own business 2 years ago (selling game currency) i know it's not such deal but at that time i was 15 and i got around 15kUSD in 5 months also my father run 4 companies and i learn a lot from him in managing his business.

about other degree's i like other engineering field i.e architect (like my father), civil engineer or maybe medicine (this was my 1st choses but after reading the biology and chemistry books i left it the last lol)

thank you

It's unfortunate that a law degree or a job in the financial sector could make you more money than a technical orientated job. After all, it's the engineers and scientists who build the world and invent the future.
A law degree will give you many options later on, but so does physics and most kinds of engineering degrees.

these kind of degrees (law or financial sector) don't make the money for the person it's the person personality and how hard and smart he work in my country UAE (DUBAI) 1000s of people take MBA because it require less studies but they end up taking little money to job less because they not good business man for example a good business man need to work a lot and in holidays which some people can't stand.

IMO it's wrong to link job with education of course it is good but not necessary for e.g :

1) the richest man in the world bill gates: he drop out from harvard (he was honorary degree in 2007).

2) google founders: they was studying for their PhD at stanford but after founding google they drop out.

here is a Microsoft video telling people to take CS for career path:

Make the Future - A Career in Computer Science


here is an article with title:

Is software engineering still lucrative?
note: that this article was published on Friday, March 22, 2002
 

pilotError

macrumors 68020
Apr 12, 2006
2,237
4
Long Island
@ pilotError:

I will study and work in US, about the age thing why will it be harder as i get older because i need to keep up with tech ? I think a person can learn and keep up with his job until the age of 65 or even more (my grandfather was working as a doctor until he aged 75), why the people u know left software? and what do you think about hardware engineering.

The business world doesn't want old workers. They don't want to pay pension (if there is such a thing anymore), medical or the higher salaries. There are laws against it, but there are loopholes too. People bitch about unions, but at least they don't cannibalize their old in the name of profit.

The politics in the US almost demands that companies outsource or apply for H1B status to bring people in. It's not that there isn't any talent here, they just don't want to pay for it. I see it every day. My last 3 or 4 assignments were managing offshore resources. These guys would sacrifice their mothers to make an extra 10k in their bonus'.


the part of opening a business, i know how hard it is, i had my own business 2 years ago (selling game currency) i know it's not such deal but at that time i was 15 and i got around 15kUSD in 5 months also my father run 4 companies and i learn a lot from him in managing his business.

about other degree's i like other engineering field i.e architect (like my father), civil engineer or maybe medicine (this was my 1st choses but after reading the biology and chemistry books i left it the last lol)

thank you

Seriously, you have a foot in the door with your father. I would seriously consider it. You do ultimately have to be happy with your decision though.

these kind of degrees (law or financial sector) don't make the money for the person it's the person personality and how hard and smart he work in my country UAE (DUBAI) 1000s of people take MBA because it require less studies but they end up taking little money to job less because they not good business man for example a good business man need to work a lot and in holidays which some people can't stand.

IMO it's wrong to link job with education of course it is good but not necessary for e.g :

1) the richest man in the world bill gates: he drop out from harvard (he was honorary degree in 2007).

2) google founders: they was studying for their PhD at stanford but after founding google they drop out.

I agree with you on the personality part.

Your examples are the exceptions, not the rule.
 

uaecasher

macrumors 65816
Original poster
Jan 29, 2009
1,289
0
Stillwater, OK
The business world doesn't want old workers. They don't want to pay pension (if there is such a thing anymore).

These guys would sacrifice their mothers to make an extra 10k in their bonus'.

your first point is correct for all jobs not only CS.


it's 100% true, here in dubai a labor (from india) will work 70 hours a week under the burning sun (around 50 degree C) and get only 160$ per month and he have to pay around 1600$ for his visa fees. so he will basically will work 10 moths with no salary and start to get almost nothing and they are happy with it.
 

drain

macrumors newbie
Mar 29, 2009
4
0
re: software engineering job

i have degrees in computer science and i can tell you reading some books doesn't make you a software engineer. most of the books out there are complete trash written by amateurs and others wanting to make a quick buck; for example, pick up a book on the unified modeling language (UML) and you will see the author(s) copy most of the book directly from the specification freely available and published by the object management group (omg.org); they even use the same examples.

you go to a "university" for a complete education; a diverse understanding of math, science, business, art, etc. you learn to work with others, how to present and share ideas, etc. all these come into play in a career. going to a "tech school" just to learn how to program in a closet makes you one-dimensional.

your teacher is completely wrong in saying that software is not as profitable as hardware engineering; i recommend you look elsewhere for guidance.

software engineering is more than programming. i have experience in software architectures, CASE tools, operating systems, development environments, modeling & simulation, command & control, artificial life, artificial intelligence, database management systems, human-computer interfaces, etc. this career requires constant education else you will fall behind quite quickly; this means tons of reading and even taking additional evening college courses.

the average career length for a software engineer in approximately 10 years; many leave for new professions. the older you get, the less opportunity exists. corporate america wants young cheap labor that they can work to death and nowadays corporate america is outsourcing more and more jobs to counties like india. i expect software engineering, in the pure programming sense, to become a low-income job. there are very few old people in my profession.

i recommend just about any other profession; i personally feel one should go where the money is. if you want to do something you enjoy; do it as a hobby or when you retire. i'm not sure where the money is now; it seems here in america we're moving to a more "service-oriented" economy... healthcare, accounting, etc. we don't seem to make "real" things anymore.
 

macsmurf

macrumors 65816
Aug 3, 2007
1,200
948
Here is Denmark there seem to be a lot of jobs for CS majors. I don´t know how it is in the US. The superstars (Bjarne Stroustrup, Anders Hejlsberg, David Heinemeier Hansson, Rasmus Lerdorf etc. (of which only Bjarne has a master's in CS)) seem to go get jobs in the US, but for us mere mortals there is still work to be found. :)

I still think the best advice is to study what you're interested in. Nobody knows how the job market will look 5 years from now anyway.
 

uaecasher

macrumors 65816
Original poster
Jan 29, 2009
1,289
0
Stillwater, OK
the average career length for a software engineer in approximately 10 years; many leave for new professions. the older you get, the less opportunity exists. corporate america wants young cheap labor that they can work to death and nowadays corporate america is outsourcing more and more jobs to counties like india. i expect software engineering, in the pure programming sense, to become a low-income job. there are very few old people in my profession.

hmm the part (the older you get, the less opportunity exists. corporate america wants young cheap labor that they can work to death and nowadays corporate america is outsourcing more and more jobs to counties like india) applies to all jobs or only software engineering ?

and i thought people will get more job opportunities as they get older because they have more experience lol?

I still think the best advice is to study what you're interested in. Nobody knows how the job market will look 5 years from now anyway.

true, but what i think is that the software market might increase as everything nowadays is getting computerized and we are still a lot of new things to come like robots and AI softwares

by the way, how much is a good salary (can buy house, car, marry have kids etc..) in US hmm let's say in CA,San Fransisco
 

drain

macrumors newbie
Mar 29, 2009
4
0
hmm the part (the older you get, the less opportunity exists. corporate america wants young cheap labor that they can work to death and nowadays corporate america is outsourcing more and more jobs to counties like india) applies to all jobs or only software engineering ?

and i thought people will get more job opportunities as they get older because they have more experience lol?

let's go through an example. fresh out of school with a degree in software engineering, you get a job developing java software systems. as time progresses, you become a great java developer; also your salary increases. at some point, "corporate" realizes that you could easily be replaced with a someone fresh out of school with a smaller salary (or outsourced for 1/10th of the salary); after all, anyone can write java code. you are told that someone with your experience cant be developing software anymore, you need to be a manager. manager's do schedules, go to meetings, and do paperwork; manager's aren't software engineers. as more time progresses, technology passes you by; no one develops in java anymore or utilizes object-oriented techniques; now they use a new language called XXZ and develop on quantum computers. there's a downturn in the economy and "corporate" realizes they don't need all these "managers" and you get laid-off. now, try to find a job... technology has passes you by; no one wants a 60-year old java programmer in a quantum world; you end up selling insurance (it kind of a joke around here that washed-up engineers end up selling insurance).

now, consider the career of a brain surgeon. the more surgeries they do, the more experience they accrue; the more in demand they are. if you needed brain surgery, would you prefer a surgeon with 20-days experience or 20-years experience? i assume you would choose the surgeon with 20-years; corporate america doesn't think this way, they would choose the 20-day surgeon because its cheaper and if brain surgery was like software systems, most end in failure anyhow, so they go the cheap route.
 

drain

macrumors newbie
Mar 29, 2009
4
0
by the way, how much is a good salary (can buy house, car, marry have kids etc..) in US hmm let's say in CA,San Fransisco

salaries vary from state to state, region to region. there are several websites that can provide average information.

san francisco is one of the most expensive cities to live. your salary will not be enough to buy a house; you'd be lucky you can afford a tiny condo after working several years.

california is generally very expensive. i know california people in their 40s still living with roommates because they cant afford a house. even with the downturn in housing, its still too expensive. oddly enough, several of these people drive $70,000 automobiles.

a few technology areas where you can get a decent salary and be able to live a "normal" life would be the washington d.c./virginia area and seattle. most of the washington jobs are government/defense and it does nothing but rain in seattle.
 

macsmurf

macrumors 65816
Aug 3, 2007
1,200
948
let's go through an example. fresh out of school with a degree in software engineering, you get a job developing java software systems. as time progresses, you become a great java developer; also your salary increases. at some point, "corporate" realizes that you could easily be replaced with a someone fresh out of school with a smaller salary (or outsourced for 1/10th of the salary); after all, anyone can write java code.

Sure, anyone can write java code. Fewer can write good java code and even less can write great java code. A master has pride in his work and a keen eye for detail gained through years of experience. I can tell you there is a difference between java code written by someone with 30 years in programming and fresh out of (or in) college. If corporations really behave this way in the US, there must be an enormous pool of experienced developers ripe for the picking. Why wouldn't these master craftsmen go together and start their own companies?

you are told that someone with your experience cant be developing software anymore, you need to be a manager. manager's do schedules, go to meetings, and do paperwork; manager's aren't software engineers. as more time progresses, technology passes you by; no one develops in java anymore or utilizes object-oriented techniques; now they use a new language called XXZ and develop on quantum computers.

So this example relies on a paradigm shift that has not been seen since Alan Turing? By the way, many programmers I know dabble in several other languages than the ones they are paid to write in. IMO, that's one of the ways you grow as a developer.

now, consider the career of a brain surgeon. the more surgeries they do, the more experience they accrue; the more in demand they are. if you needed brain surgery, would you prefer a surgeon with 20-days experience or 20-years experience? i assume you would choose the surgeon with 20-years; corporate america doesn't think this way, they would choose the 20-day surgeon because its cheaper and if brain surgery was like software systems, most end in failure anyhow, so they go the cheap route.

It seems that your point is that software developers gain no value as they become more experienced. I respectfully disagree. Anyway, all I want is an interesting job and the pay is way down on my list of requirements. In my country there has always been a demand for CS graduates (although I'm told the way the teach it is different from the US) and I see no reason for it to change.

Now, I'm not in a position to offer any informed opinion about working in the software industry in the US. I recognize that there are problems (such as the cost of health insurance) that is simply not an issue for an employer in my country.
 

uaecasher

macrumors 65816
Original poster
Jan 29, 2009
1,289
0
Stillwater, OK
Sure, anyone can write java code. Fewer can write good java code and even less can write great java code. A master has pride in his work and a keen eye for detail gained through years of experience. I can tell you there is a difference between java code written by someone with 30 years in programming and fresh out of (or in) college. If corporations really behave this way in the US, there must be an enormous pool of experienced developers ripe for the picking. Why wouldn't these master craftsmen go together and start their own companies?



So this example relies on a paradigm shift that has not been seen since Alan Turing? By the way, many programmers I know dabble in several other languages than the ones they are paid to write in. IMO, that's one of the ways you grow as a developer.



It seems that your point is that software developers gain no value as they become more experienced. I respectfully disagree. Anyway, all I want is an interesting job and the pay is way down on my list of requirements. In my country there has always been a demand for CS graduates (although I'm told the way the teach it is different from the US) and I see no reason for it to change.

I agree with you, and i don't know at what bases he get his info most of big companies i.e (Microsoft, Apple, Intel, Google, Yahoo) require 5 to 10 years experience for software engineer even more for Sr. software engineer.

the other thing is i think he should change the world take a programmer to a manager to (take a programmer to a Sr. software engineer or VP engineer)

one example of that is google:

here is their management team page link:

http://www.google.com/corporate/execs.html

most of them have 20 years+ in software engineering (for engineering team). in your case these people will be know selling hotdogs lol
 

macsmurf

macrumors 65816
Aug 3, 2007
1,200
948
I agree with you, and i don't know at what bases he get his info most of big companies i.e (Microsoft, Apple, Intel, Google, Yahoo) require 5 to 10 years experience for software engineer even more for Sr. software engineer.

the other thing is i think he should change the world take a programmer to a manager to (take a programmer to a Sr. software engineer or VP engineer)

one example of that is google:

here is their management team page link:

http://www.google.com/corporate/execs.html

most of them have 20 years+ in software engineering (for engineering team). in your case these people will be know selling hotdogs lol

Well, I'm not prepared to discount the opinion of someone who has real experience as a developer in a country where I don't have any. On the other hand, I don't take the opinions of anonymous people on the internet too seriously.

Google can pick and choose so it's not really a good indicator for the business as a whole. When they were looking for employees here in Aarhus they considered a ph.d. in CS an "advantage" :)

I consider it a great luxury not having to be motivated by the amount of money I make. I think making software is interesting work and I consider myself fairly good at it. If there were no jobs available I probably would still be doing it.
 

trule

macrumors 6502
Mar 16, 2007
310
0
The business world doesn't want old workers.

There is a demographic time bomb in the western world, you can be sure that business will want every worker they can get, yes perhaps even in the USA.

Mature workers fall into two categories IMO; been here for 20-30 years and just pushing the buttons until my pension, or highly skilled reliable and wise contributors. In the US unfortunately the former is a bigger problem than the opportunity of the latter to most large organisations so they tend to cut indiscriminately (think IBM).

But that trend will probably change in the next decade or two, off-shoring is a trend that has played out, the benefit is not as great as it used to be - sometimes there is no benefit at all.
 

sbauer

macrumors member
Feb 7, 2009
70
0
Baltimore, MD
I'm sorry, but I disagree with most of the anti-CS advice here.

I've been developing software for a while now. I've worked at various companies and have had many different experiences.

I love what I do. I take pride in developing quality software. Our industry is filled with people that signed up to make a quick buck. They probably heard a commercial on the radio stating that you could make N dollars a year if you get XYZ certification. They have no real interest in software. It shows too.

Before you decide to get into the software development industry, you have to be committed to it. You must be willing to take responsibility for your own career. Continuous improvement is the key. If you expect to take your college education and float through the rest of your career with it, you're underestimating it a bit.
 

sud

macrumors regular
Apr 26, 2008
118
0
Australia
In my experience coming from an IT management background and working in 3 different countries there is no substitute for experience, no offense intended to any under grads or anyone interested in CS. I'll say it again you cannot compare an undergrad to an experienced person no matter what field you work in.

I have employed people from both backgrounds and will always choose the one with actual industry experience.

my 2c
 

lee1210

macrumors 68040
Jan 10, 2005
3,182
3
Dallas, TX
In my experience coming from an IT management background and working in 3 different countries there is no substitute for experience, no offense intended to any under grads or anyone interested in CS. I'll say it again you cannot compare an undergrad to an experienced person no matter what field you work in.

I have employed people from both backgrounds and will always choose the one with actual industry experience.

my 2c

Of course experience is important, but everything else being equal (experience, relevant domain knowledge, etc.), would a candidate with a degree have no advantage over one without in your eyes?

-Lee
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.