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

drain

macrumors newbie
Mar 29, 2009
4
0
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

a career lasts approximately 35 years. count the number of job opportunities for *software engineers* with 1-5 years, 6-10 years, 11-20 years, and 20+ years experience. As the years increase, opportunities decrease.

your google link lists presidents, vice-presidents, and fellows; none of these are software engineers. some have software backgrounds, but not every software engineer transitions his career to such a level; what happens to the 90% that don't become vice-presidents? they are the ones selling hot dogs (and insurance).

understand what i'm saying; a software engineering job is rarely forever, i.e. 35 years, most make career changes, i.e. management, vice-president, hot dog vendors, etc. and they cease to hold the title of software engineer or do software engineering work.

i've worked for and with various small, medium, and large companies in the united states; government, research, military, nasa; the story is always the same. i've avoided the commercial sector as conditions there are even worse.
 

uaecasher

macrumors 65816
Original poster
Jan 29, 2009
1,289
0
Stillwater, OK
what you say is true if in the way that in a company it need only X number of Sr. software engineer and and it decreases as the level get higher which happen in all jobs. you may have 50 general doctor but only 5 brain surgeons. if that what you want to say then i agree with you
 

fishkorp

macrumors 68030
Apr 10, 2006
2,536
650
Ellicott City, MD
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?

From my experience, most companies (at least around this area), won't even look at you if you don't have a college degree in Computer Science (or equivalent). Many require a Master's Degree. Google, for example, prefer candidates with a M.S. or PhD. Unless you are truly exceptional, you'll have a hard time getting a job there with only a B.S. So learning something from a book on your own is in no way the same thing. It's a very good supplement though. Sure, a dedicated person can actually learn just as much, if not more, but a company won't hire them just because they're lacking that piece of paper.

If you love programming, go for the Comp Sci/Software Engineering degree.
 

savar

macrumors 68000
Jun 6, 2003
1,950
0
District of Columbia
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?

You are correct; those books do not make real software engineers. A lot of people get those jobs anyway without any real formal training or experience.

Books are a great resource, but a lot of "self-taught" programmers are actually quite horrendous. I would never hire one of them even if they had professional experience, because software engineering is done very badly at many large companies.

I should point out that school's don't really teach you how to program; in fact, if you show up to school and don't know how to program, you may find yourself behind the curve.

Good curricula actually focus on the underlying problems of software engineering, such as data models, algorithms, and time/space tradeoffs. Understanding these fundamentals leads to a well-rounded engineer; most people are ignorant of these fundamentals, and most software projects end disastrously because of it.

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.

I agree totally, but I don't know why this is. Maybe engineers just aren't very entrepreneurial?

I was watching a show on Discover about the Global Positioning System and how they have to take the effect of relativity into account when transmitting time codes to earth.

The amount of complexity that has been solved and simplified to be mass-marketable is simply astounding. And yet many engineers don't get paid as much as accountants who have fairly brain dead jobs.
 

sud

macrumors regular
Apr 26, 2008
118
0
Australia
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

All being equal, as far as experience and relevant knowledge of-course I would take the candidate with a degree, however would I choose and undergrad fresh from uni over or a candidate with 3 - 5 years solid on the job relevant experience with no formal degree, I would take the solid 3 - 5 years experience.

While having the uni degree does show the ability to commit which is very relevant to any employer, having a few years of experience usually comes with an employee that has commitments eg: family car payment, house payments those to are important to an employer and are rarely over looked in favor of a fresh grad student.

Having said all that, I would encourage anyone passionate in cs to "just do it", last thing you want is to delay it and find out you would have been better off with it rather then without it later in life.
 

sbauer

macrumors member
Feb 7, 2009
70
0
Baltimore, MD
Books are a great resource, but a lot of "self-taught" programmers are actually quite horrendous. I would never hire one of them even if they had professional experience, because software engineering is done very badly at many large companies.

Oh come on. I call BS. Have you seen the students coming out of most colleges now? It's pathetic. Software engineering is done badly because most software developers are not very good. Yes, that includes a lot of CS graduates.

You're telling me that you wouldn't hire a solid developer with 10 years of experience because they don't happen to have the CS degree you're looking for? Why are you knocking self taught experienced developers? Did one steal your lunch money when you were a kid?

Good curricula actually focus on the underlying problems of software engineering, such as data models, algorithms, and time/space tradeoffs. Understanding these fundamentals leads to a well-rounded engineer; most people are ignorant of these fundamentals, and most software projects end disastrously because of it.

Most projects fail because most developers have zero idea how to write quality code and they're entrapped in a development process from hell. It goes beyond data models, and algorithms.

I go from company-to-company working on software projects. Most code that I see is horrible. It doesn't matter what type of degree someone may have. I see tightly coupled, untestable code everywhere I go. Hell, a lot of them don't even know how to properly use their revision control system. No daily builds, no continuous integration, no automated tests. It's a nightmare out there.
 

iSee

macrumors 68040
Oct 25, 2004
3,540
272
I think the anti-CS info in this thread is overblown.
Based on my experience (~20 years in professional software development) I have the following comments:

(1) There are a lot of good software development jobs around. I expect that to continue. IT is going to continue to become ever more central to every kind of business. One way or another, that's going to equal jobs. And not just for Indian programmers (the specter of outsourcing as always been exaggerated. It is not that easy to do successfully, and is often not actually that cheap, even in the short term.)

There are jobs for both new and experienced developers. There are advantages and disadvantages to both for employers. Depending on the employer, most should have some mix of both.

The most important thing you can do is to excel, both in school and in the jobs you will have. It comes through on your resume and in interviews if you are the type of person to do the minimum needed to get by, or you try to do the maximum possible in the time allowed. If you are the second type of person and have even basic aptitude for the work, then you will be able to get jobs.

You do need to be wary of tying your career down to one specific technology because they do come and go. But a great C++ programmer is also a great Java programmer and a great .NET developer... after they learn the syntax, conventions, and fundamental APIs of the new environment.
Most employers don't understand this and anyway they expect you to have experience with their development environment on day one. So it's important that once you have a job, take whatever opportunities arise to learn new technologies. Don't push to use inapprorpriate technologies, but keep an open mind and eye. When you're prototyping something else anyway, it's often a good time to try out a different language or tool, too.

(2) A degree is quite important. There was a time when that was much less true (in fact, people of my mother's generation didn't have CS degrees--because they did not really exist when she went to school!), but that day is past. As a young job candidate, you have very little chance to get past the resume evaluation stage of obtaining a job... unless maybe you want to move "offshore" to become one of those super talented $10/hr programmers I hear so much about ;)

Also, whoever those people were that thought anyone could learn programming by just reading books has absolutely no idea what they are talking about. OP, rest assured that those people cannot give you any useful advice in this area. IMHO, you need both practical experience and an understanding of theory and principals to become a good software developer (plus a natural aptitude for analytical thinking, which I assume you have or you probably wouldn't even like programming). A good CS program will give you a great start on the theory and a little experience, too. If is very difficult to get the theory from just reading book and they give you no experience. What good book do is help you learn certain specific technologies.

(3) Don't go into "hardware" or the law or get an MBA if you are interested in software development. People fail as with law degrees MBAs, etc., just like they do in every other field. The #1 thing you can do to have a successful career is to excel at your work. You can't do that if you don't have an interest in it. I think you said in one post that your ideal job is to sit at a computer with three screens and program all day. That's a good sign, because that's exactly what you'll have to do all day every day to be successful. (Well, depending on what you're doing you may or may not need all three screens!)

Well, I could go on and on, but if this is what you are interested in, then this is what you should do.
 

uaecasher

macrumors 65816
Original poster
Jan 29, 2009
1,289
0
Stillwater, OK
I think the anti-CS info in this thread is overblown.
Based on my experience (~20 years in professional software development) I have the following comments:

(1) There are a lot of good software development jobs around. I expect that to continue. IT is going to continue to become ever more central to every kind of business. One way or another, that's going to equal jobs. And not just for Indian programmers (the specter of outsourcing as always been exaggerated. It is not that easy to do successfully, and is often not actually that cheap, even in the short term.)

There are jobs for both new and experienced developers. There are advantages and disadvantages to both for employers. Depending on the employer, most should have some mix of both.

The most important thing you can do is to excel, both in school and in the jobs you will have. It comes through on your resume and in interviews if you are the type of person to do the minimum needed to get by, or you try to do the maximum possible in the time allowed. If you are the second type of person and have even basic aptitude for the work, then you will be able to get jobs.

You do need to be wary of tying your career down to one specific technology because they do come and go. But a great C++ programmer is also a great Java programmer and a great .NET developer... after they learn the syntax, conventions, and fundamental APIs of the new environment.
Most employers don't understand this and anyway they expect you to have experience with their development environment on day one. So it's important that once you have a job, take whatever opportunities arise to learn new technologies. Don't push to use inapprorpriate technologies, but keep an open mind and eye. When you're prototyping something else anyway, it's often a good time to try out a different language or tool, too.

(2) A degree is quite important. There was a time when that was much less true (in fact, people of my mother's generation didn't have CS degrees--because they did not really exist when she went to school!), but that day is past. As a young job candidate, you have very little chance to get past the resume evaluation stage of obtaining a job... unless maybe you want to move "offshore" to become one of those super talented $10/hr programmers I hear so much about ;)

Also, whoever those people were that thought anyone could learn programming by just reading books has absolutely no idea what they are talking about. OP, rest assured that those people cannot give you any useful advice in this area. IMHO, you need both practical experience and an understanding of theory and principals to become a good software developer (plus a natural aptitude for analytical thinking, which I assume you have or you probably wouldn't even like programming). A good CS program will give you a great start on the theory and a little experience, too. If is very difficult to get the theory from just reading book and they give you no experience. What good book do is help you learn certain specific technologies.

(3) Don't go into "hardware" or the law or get an MBA if you are interested in software development. People fail as with law degrees MBAs, etc., just like they do in every other field. The #1 thing you can do to have a successful career is to excel at your work. You can't do that if you don't have an interest in it. I think you said in one post that your ideal job is to sit at a computer with three screens and program all day. That's a good sign, because that's exactly what you'll have to do all day every day to be successful. (Well, depending on what you're doing you may or may not need all three screens!)

Well, I could go on and on, but if this is what you are interested in, then this is what you should do.

thanks for sharing your thoughts
 

Sander

macrumors 6502a
Apr 24, 2008
521
67
a career lasts approximately 35 years. count the number of job opportunities for *software engineers* with 1-5 years, 6-10 years, 11-20 years, and 20+ years experience. As the years increase, opportunities decrease.

If you use this metric, you will get very skewed results. I think it would be tough coming up with any job vacancy requiring 20+ years experience. Especially in software, we are in a fast-moving field. I rarely send a job description to our HR department with "K&R C" in its requirements. If I want someone new, it's because we don't have the time ourselves to jump on all the new stuff.

I think the reason you don't see many engineers (not just SW) with 20+ years of experience on the job market is that they have probably settled into a job they like, or have expanded their jobs towards (system) architecture, perhaps some group leadership or project management, etc.

However, when I'm interviewing someone who asks "how quickly can one become a manager in this company" it's instant-reject. If you are trying to get rid of this work before you even started it, why did you pick this career in the first place?!
 

McGiord

macrumors 601
Oct 5, 2003
4,558
290
Dark Castle
My 2 cents of advice:
- You don't know what you really like and what you really want until you try it, you may have an idea of what it is and how it is, but it will be better, the same or worse than what you thought after you are actually doing it. Just try it before, get a flavor of it.
- Check this website for current job openings: http://www.indeed.com
There you can see real current job openings, and what they pay, what kind of experience and knowledge the employers want.
- If you have the opportunity go to the real workplaces and see for yourself, ask the actual workers what they do, how they do it, and what they did to get there.
- During your academic studies and while working do as many things as you are interested in, then you can later decide what path to take.
- The important thing about your decisions is that you can make them, no your boss, or your teacher. Some of them will give you good advice.
- Nothing is final: you can change your mind later on based on your discoveries

I studied ME.

Initially in my career I wanted to work only on techincal stuff, after some years I realized that not only the technical stuff was important for what I wanted to do but also many other things like developing other skills: communication, leadership, project management, languages. Then I realized that what I wanted was: more money. The I realized that I had more moeny but no time, then I wanted to move to other line of work to have more free time + more money with less responsabilities. I managed to get this thanks to years of experience + additional training and certifications + HARD WORK!

What you want today, maybe not be the same thing that you want tomorrow.

Besides a formal CS degree, many open positions demand for a specific technical certification. In some cases your employer will paid for your training to get them, in other you are on your own.
 

McGiord

macrumors 601
Oct 5, 2003
4,558
290
Dark Castle
what do you guys think about outsourcing and how does it work? and is it really a problem?

Outsourcing like all things have its positive and negative side.

I believe that each company should dedicate to its main line of business, therefore they can outsource some non essential things to other companies.

Some companies do this to the extreme that their service and support is outsourced to mediocre companies and therefore that hurts the quality of service and support for the end customer.

Specifically IT outsourcing is the most common practice in the business world.

For example, a Dentist office doesn't make any money by hiring for his staff an IT support person, the Dentist outsources this work to a consultant or a well known company.
Similar thing it's done by corporations: outsource their IT department.
 

uaecasher

macrumors 65816
Original poster
Jan 29, 2009
1,289
0
Stillwater, OK
ok but if it's cheaper to work in India why don't google or apple or microsoft take all it's staff to India?

from my experience with Indians (as i live in dubai) these people get greedy real quickly, once you treat them well or give them money, they will want more and at point employing in US will be cheaper, here in Dubai we got Indians riding BMWs
 

iSee

macrumors 68040
Oct 25, 2004
3,540
272
ok but if it's cheaper to work in India why don't google or apple or microsoft take all it's staff to India?

from my experience with Indians (as i live in dubai) these people get greedy real quickly, once you treat them well or give them money, they will want more and at point employing in US will be cheaper, here in Dubai we got Indians riding BMWs

Careful, you're getting dangerously close to sterotyping all Indians (which I'm sure you don't mean to do--I'm just warning you so you don't get flamed).

Anyway, I see it differently. Maybe this is just because I'm thoroughly American, but I believe people (Indians or not, ha ha) should get paid fair market value. I would only consider someone greedy if they were trying to get paid more than fair market value. It's easy to handle that--just don't pay them more. Of course, you need to have a realistic understanding of fair market value. If someone leaves because you won't pay them more and they get another job making what they were asking for, by definition you weren't paying them at market value.

To answer the first part of your question -- why doesn't everyone take there work to india if it's cheaper -- the answer is simple: Quite often it isn't cheaper.
 

McGiord

macrumors 601
Oct 5, 2003
4,558
290
Dark Castle
Outsourcing to a low wage country is a different scenario, and depends on things like:
- Location
- Language and Cultural differences
- Low wages
- Customs duties + taxes

:apple: outsources all their manufacturing operations to chinese companies.
But its key work activities are still done in the USA, design, research and development, engineering, etc...

I don;t know about the other companies.

India is a very interesting country with a huge amount of people.

Because they are indians why can't they drive a BMW?
A person's citizenship doesn't make him/her different from others. And in my opinion sometimes the immigrants have better disposition to do more, and because of their knowledge of how is the live in other country they can make things better or easily when dealing in an international environment.
 

uaecasher

macrumors 65816
Original poster
Jan 29, 2009
1,289
0
Stillwater, OK
that's what I'm trying to prove that if your good at something it won't matter if your Indian or US. I think the difference will be there in easy/ low paying jobs
 

YMark

macrumors 6502a
Nov 7, 2008
823
32
Arizona
I used to work for a company that outsourced many projects to India. Everyone one of them came back to the states screwed up.

However, I've also worked with engineers from India here in the USA. Most have been very sharp.
 

McGiord

macrumors 601
Oct 5, 2003
4,558
290
Dark Castle
that's what I'm trying to prove that if your good at something it won't matter if your Indian or US. I think the difference will be there in easy/ low paying jobs

Just keep in mind that to work in the USA, or most of other foreign countries for you, unless you are a citizen you will need to go through an immigration or temporary work visa process in order to be able to legally work.

And many times the hiring company would need to sponsor the candidate, and this may be a difficulty that will prevent you to easily get the job.

If you study in an USA University, also you need a student visa, and depending on how the program is you can get a co-op/internship work permit that will allow you to get experience there and get a serious job offer.

If you are good on what you do, you will be successful.

Good luck, and remember to have fun while working toward your goals.
 

uaecasher

macrumors 65816
Original poster
Jan 29, 2009
1,289
0
Stillwater, OK
i Already applied for green card and have been approved and will be issued within 1 year, and my Uncle is a US citizen so i guess i have solved this problem
 

McGiord

macrumors 601
Oct 5, 2003
4,558
290
Dark Castle
i Already applied for green card and have been approved and will be issued within 1 year, and my Uncle is a US citizen so i guess i have solved this problem

Why do you want to leave Dubai?
I heard that it's a great country whose government really managed to spread the oil wealth to their citizens, is that right?
 

uaecasher

macrumors 65816
Original poster
Jan 29, 2009
1,289
0
Stillwater, OK
Why do you want to leave Dubai?
I heard that it's a great country whose government really managed to spread the oil wealth to their citizens, is that right?

very true, UAE citizens are so spoiled but the case is I'm not UAE citizen i only live there, if i was a UAE citizen i wouldn't leave because they would directly make manager of big company or minister of technology etc as there is very few educated (no offense) locals
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.