views:

7011

answers:

51

Having worked in software development for 12 years, I've recently started to worry about ageism in the industry. Seeing I'm not too bad at what I do I've never really worried about where my next job's going to come from, but the more I look around me the younger software developers seem to get.

Although I feel I'm now at the top of my programming game, I have some management experience and I'm now wondering if I should make a fully-fledged leap from development to ensure future career security.

I know ageism has traditionally be linked with the IT industry, but given modern employment law makes discrimination illegal, is ageism still a real problem for software developers? Or are my aging neurons deluding me?

+2  A: 

I think it depends on your personality and skill sets. We are subject to fierce collaboration and ever changing technology. As some get older, some tend not collaborate very well (take criticisms personally) or do not understand simple concepts like DRY. Meanwhile many others lead the industry as thought leaders, or lead their team as gurus.

eed3si9n
+2  A: 

When I look around me I think it's the other way around. There are lots of young programmers because most of them get management jobs eventually. I know a lot of companies that tried hiring experienced programmers (ie 20 years of programming experience) but there can't find them.

I hope Í can keep developing for a long time but I'm not too worried about my employment possibilities in the future.

When you're in a more senior programming-job employers will probably expect more of your social skills though. So it might be a good idea to invest in those skills.

Mendelt
+1  A: 

In the UK age discrimination is illegal and you can sue a company for blatantly discriminating on that, so first and foremost companies just aren't allowed to do that, not in the UK anyway.

Having said that, I would say it all depends on the company you work for - I imagine something like a start up or similar with a young culture will be more likely to discriminate than not.

Personally I've not experienced it, I work with people my own age (20's) and people in their 30's and 40's too and there's no problem.

The only problem I've encountered is wondering how on earth some programmers with vastly more experience than me are barely that much better than I am, it can be very disappointing. I imagine you are a far better programmer than that though :-)

kronoz
+16  A: 

I think, as long as you are producing great software, you shouldn't worry much, but do note how other developers are coping with their ageisms:

  • Moving to upper/middle management
  • Writing books
  • Publishing blogs (esp., "experience stories" blogs)
  • Conducting seminars
  • Training other devs
  • Setting up companies

Choose your poison, but remaining in development job (especially in senior developer positions or "legacy systems maintenance") is definitely still an option!

Jon Limjap
+31  A: 

One way older guys tend to get into trouble is by not keeping up with new technology. They might be assembler gurus, but how many jobs have a requirement for assembler these days? Knowing relevant information is what will make you attractive to future employers, not what you're age is.

Mark Ingram
What's your point? Your statement is ageist - you should say "One way anyone ...". And if you do that, it's no answewr to the question.
le dorfier
I think the point Mark was trying to make was that it's easy to get comfortable/complacent and just stick with what you know. When someone does that for a while, they may ultimately find themselves in the position of an "older" individual whose skills are becoming less relevant.
gnovice
Well for starters, not many "new / young" programmers start off learning assembler or cobol or something. Of course there will be some, but like you say, the jobs for those roles are few and far between. The best thing to do is keep on top of your skills - old and young.
Mark Ingram
@le dorfier, what the hell are you talking about? It isn't ageism to point out that as a generalization people tend to stop learning the latest x/y/z after dozens of years in the game.
Simucal
+2  A: 

I think that it works both ways,

I'm a good decade or so younger than the other developers on my team at work (I'm mid 20s, they're mid 30s/40s). I worry that they consider me too young for the position and don't give me respect as a result - even though I'm equally qualified for our current tasks with up to date and relevant experience. I get very frustrated by the dogma surrounding software development and really don't feel my age should have any bearing on my ability to write good code.

While kronoz makes a good point that age discrimination is officially illegal (I'm in the UK too) - I think there's a natural tendency for people to group around their own age, and at most places there's a well established company culture that has an intangible but real effect on hiring decisions. Age equality on hiring is clearly very difficult to enforce, and much harder to gauge from the subject's perspective than when they're actually in a role and being missed in promotions/raises etc.

I think none of us can tell you if your ageing neurons are deluding you, because we don't have experience of your specific circumstances and the culture at your place of employment. The only advice I can give is if you really think you're at the top of your programming game - make a conceited effort to stay there. Good code is good code and if your employer is of any merit that should shine through regardless of age.

I'd also say typically people look to those older for advice and wisdom (the natural path to management), so it might be an idea to focus those skills, to mentor those junior to you and at the same time making your worth to the team/company higher. But that said, if programming is what you love, stick to it. There's no use worrying over something like age because you can't change it. There are good employers out there who won't care about your age. Don't change what you love doing because of a number. It's cliche, but life is short and you need to be happy working.

Ali Parr
A: 

@Jimmy

Please give your reasons why.

Because India is churning out hundreds of programmers that'll do the same (mediocre) job for much less money.

I mean, that sounds kind of flip. But I'm serious: most software developers are godawful and so I'd rather just go for the cheapest ones I can find.

Most employers don't offer dual career tracks for non-managerial staff to rise through the ranks whilst allowing them to do the things that they are good at (i.e. writing programs). As such, typically anyone with any great proficiency will cease to be a developer sooner or later. If you're still writing software and you're in your 40s it tends to mean only one thing: you're not very good at it.

DrPizza
...or that you love writing software more than anything else?
Gishu
-1 for untruth. If you're a good developer in a situation where you have no technical career track, find another job or become a contractor where your skills and experience are valued.
Jeremy McGee
+5  A: 

I believe it's important to stay current. It seems too many people try to rest on the skills they have and expect the company they work for to keep them current. I have always made the time to keep my skills current and to make sure that I can apply those skills at work.

It's also important to be realistic in what an appropriate salary is. A 50+ year old developer's salary requirements isn't the same as a 21 year old. When looking for a job an older person may not get it just because they are demanding a higher salary. I don't consider that ageism, but it is a side affect of aging that I believe is more relevant.

@DrPizza, That is ageism. I'm 54 and curious as to what your rational is for your statement?

@DrPizza again. You make the statement that "If you're still writing software in your 40s you are almost certainly bad at your job". I'm blown away by your lack of understanding. All good programmers need to stop writing software when they turn 40?

bruceatk
+34  A: 

In many ways many corporate structures treat development as quite a blue-collar activity - it can't be something that people will want to do their entire career. If you're a widget-maker turning a crank every day, then you want to get a promotion to be the supervisor (or to be on the machine that turns out luxury widgets). Then the line manager, then the plant manager and then the company - BWA-HA-HA, the power and the glory!

But software development is not widget cranking: a painter doesn't aspire to promotion to be a gallery owner? Perhaps a surgeon or a colleage professor has levels of responsibility, but many jobs tie together more responsibility with administration and management of colleagues. A teacher who doesn't become school head isn't considered a bad teacher.

Much of what I perceive as ageism, therefore, stems from the assumption that if you're still cutting code into your forties then you must be bad, because why else aren't you managing people? I know many coders who've eschewed promotions for precisely this reason. Why would I want to do a job which involved more meetings, more HR issues and less of the stuff we actively enjoyed and which drew us to this in the first place.

I'd employ the person that could do the job. Too often, though, older people are too skilled in some areas and will be commensurately more expensive. That's not ageism, that's economics. I don't assume someone over 40 to be a bad coder, but I'm not going to employ them as an entry-level generalist doing the database grunt work and the boring admin tasks - they'd leave and I'd be interviewing again really soon.

Over time you develop into a niche in your profession - you become more specialised and are harder to employ on that basis. Ask anyone else in other walks of professional life - senior doctors, tax lawyers or accountants struggle to move jobs, too.

Unsliced
+1: for "still cutting code in your forties" read "still cutting code in your sixties", however...
Brent.Longborough
+1: "a painter doesn't aspire to promotion to be a gallery owner". Well said mate.
Andreas Grech
Great post. Something to think about for my future.
EightyEight
+12  A: 

@DrPizza

Such a sweeping statement about 40+ year olds being bad developers is simply a nonsense. Maybe it applies to areas you have experience of (database/web/corporate internal apps? ), but it certainly does not apply in the area I work in which is much more technically oriented - CAD, graphics, performance systems, mathematics, real-time, development of SDK's to a technical customer base, etc. I.e. "Scientific" programming vs "database". I.e. there is an enormous amount of valuable domain expertise locked into an older brain, and that is something that can't be replaced by cheap labour.

Over the years I have come across many a 40-something who is simply very good at what they do. Not all personality types actually want to be "management" - many shy away from the personal interaction that is implied. Others are simply interested in the technical aspects of the work they do.

A difference in behaviour, perhaps, is that your young-gun probably devours books in his own time, works silly hours, and types lots and lots and lots of code. Whereas your older statesperson (to not be sexist here) probably is more selective in reading, and has a home family life to go back to. Trust me, it's hard to read a 750 page technical book with a 4 year old jumping on your head.

Back to the original question on jumping to management. The assumption that this makes you more secure is not necessarily true - often the technical manager is the easiest person to get rid of, and the last position a company will fill by external recruitment. Based on purely anecdotal evidence, I would hazard that most software management positions are filled by internal promotion as it is normally the local guru/expert who naturally floats there.

I would certainly back up other replies saying that you should always try to keep up to date with some new technology, and also mentor the younger guys.

Greg Whitfield
+1  A: 

Such a sweeping statement about 40+ year olds being bad developers is simply a nonsense. Maybe it applies to areas you have experience of (database/web/corporate internal apps? ), but it certainly does not apply in the area I work in which is much more technically oriented - CAD, graphics, performance systems, mathematics, real-time, development of SDK's to a technical customer base, etc. I.e. "Scientific" programming vs "database". I.e. there is an enormous amount of valuable expertise locked into an older brain.

Well, to be fair, the only markets I've worked in or have any great interest in are the generic LOB app markets. They're the big employers. They're the ones "threatened" by offshore development. I'm sure there are niches where what I said isn't true, but that doesn't alter the generalities. (I find them "interesting" not because the work is particularly interesting, but because they're the ones that I have to work with most often; their dysfunction is just incredible).

Although even then, I'm sure that many employers don't offer a suitable career track for the highly-skilled non-manager.

DrPizza
Consistently, the problem in your answers for this thread is that you falsely generalize. Usually your reasoning takes the form "In my experience, A. Therefore always (or generally) A". The other answers in this thread evince enough counterexamples to your reasoning.
Alan
I don't believe they do, no. The lack of a proper non-managerial career path for developers is quite widespread.
DrPizza
A: 

@Jon Limjap

Thanks for an excellent, positive answer which is very close to my current thinking. While I've tried the book and blogging thing with a limited success, I'm now thinking seriously about either going 100% into management or perhaps creating my own company.

Ubiguchi
+12  A: 

One of the reasons why there are not that many old guys in IT is simply that it hasn't been around as a mainstream career for that long. In ten years time I am sure most of us will still be in the industry and you will steadily see more people in their 40s, 50s and 60s.

John Channing
There are all sorts of people from the Ancient of Days who are either still working or still commenting on this business, like Fred Brooks, etc.
Gregory Higley
ahem! some of us are already in our 40's and when I was in my 30's I remember friends on mailing lists who were in THEIR 50's
Andy Dent
My freaking great-uncle Fred was an Algol coder.
chaos
+2  A: 

@DrPizza

While it's apparent a number of people find your comments distasteful, I have to say there's definately some resonance with your comments and the IT industry.

I've come across a number of managers who felt they were pushed out of development to prove they were any good, and, as Unsliced said, development is often treated as a blue collar job which means you have to progress away from coding if you want to climb the ladder.

Ubiguchi
+2  A: 

@Unsliced

I think you hit an important nail on the head by mentioning economics. Since most people want their salaries to increase with age, perhaps it's fair to say there's an inherent ageism in the ecomonics of software development.

Although businesses will invariably pay for a few expensive coders, as developers age a lot of them will need to move away from coding if they want their salaries to increase. This also offers an explanation for why old devlopers are sometimes thought of badly. Old developers either prefer coding to maximizing their earning potential, or they couldn't make it up the ladder from development and probably write bad code to boot!

Perhaps if code made the world go round instead of money it'd be a different story for those of us with greying hairs. Sigh.

Ubiguchi
+20  A: 

If you are doing purely development tasks, will you be able to compete with a 'Developer' ten years younger?

Probably not.

You will be more expensive, will not work long hours as you have a family to go to and so on.

As you get older you need to find ways of adding value to your employer/team/whatever. You mention management - you could go that way. You have to get into some sort of leadership role - 'people' leadership (management), technical leadership (architecture), domain leaderhip (subject matter expert). Once you start doing more leadership tasks, you are doing less coding, which means you are no longer a developer - and ageism does not apply.

Although to maintain some street cred, you still have top coding skills in something.

Simon Munro
+2  A: 

Most employers don't offer dual career tracks for non-managerial staff to rise through the ranks whilst allowing them to do the things that they are good at (i.e. writing programs).

That is true of most bad employers, but the trend is changing at more enlightened companies.

As such, typically anyone with any great proficiency will cease to be a developer sooner or later. If you're still writing software and you're in your 40s it tends to mean only one thing: you're not very good at it.

That has not been my experience. Many developers realising that there is limited opportunity for career progression and bored of office politics, take the obvious root that allows them to earn a good income and do what they love; they become contractors. In a large financial centre like London, good contractors can easily earn £600 (>US$1000) per day, so in the contract market the opposite is true, if you're still getting contracts in your 40s it is because you are really good.

John Channing
+3  A: 

I'd be hesitant to hire anyone over the age of about 40.

From DrPizza's Profile:

Age: 27

That's that mystery solved then.

In saying that, I'm 26, and I sometimes find it difficult to relate to people in say their 40's.

When speaking about technical/work issues, I get along just fine, but when people start talking about taking their kids to school and all that kind of stuff, it's hard to say more than "oh, um, yeah."
That's kind of a conversation killer, and does make it hard to bond with people. It might not make sense, but those random 'water cooler' chats you have with your co-workers go a long long way towards making a happy team.
Legal or not, age does provide a huge barrier towards that kind of thing.

Orion Edwards
I'm 30 and a few years ago was working with guys in their 50's. They were great and I learnt a LOT from them. I was sad they're gone. Relating to them was easy - we had a common ground.... programming. Then again I did have kids then, too....
Valerion
+1  A: 

@John Channing

That is true of most bad employers, but the trend is changing at more enlightened companies.

I think that it's still very much the rule.

I would agree that it's probably not the best way of treating developers, and it would be good if more employers could offer a non-management track that was desirable to skilled knowledge workers. But the reality is that it's rare, especially in non-software companies.

That has not been my experience. Many developers realising that there is limited opportunity for career progression and bored of office politics, take the obvious root that allows them to earn a good income and do what they love; they become contractors.

The overwhelming majority of contractors I've worked with and interviewed should be outsourced to India.

In a large financial centre like London, good contractors can easily earn £600 (>US$1000) per day, so in the contract market the opposite is true, if you're still getting contracts in your 40s it is because you are really good.

I don't think that is true; there are simply too many people earning that kind of money for it to be true.

@Orion Edwards

Legal or not, age does provide a huge barrier towards that kind of thing.

I think there is some truth in that. However, I will say this: in the UK it is still perfectly legal to not hire someone simply because you do not feel that they will work effectively with their colleagues. Now, you'll probably want to CYA and ensure that the reason is properly documented (i.e. disparate interests and attitudes and not merely "age") but it's quite doable.

DrPizza
+3  A: 

Ugh, Digg-like comments on Stack Overflow already?!

Anyway, I think this kind of dialog more than proves why younger developers differ from wiser developers.

As I got older I found that 1) I was less willing to do interesting work for less than top dollar, and 2) As your salary increased, so did corresponding expectations from the employer. This tells me a 40+ developer can survive in the technical ranks, but must do so in ways different than a 20-something coming right out of school. e.g. Consulting tends to demand top-notch talent in exchange for ridiculously good pay, if you can keep up with the pace.

After all, unlike my 20's I now have a house, wife, kid, dog and a heap of bills to take care of before my own interests. The money is much more important now.

spoulson
+105  A: 

I've entered my 40's, and worry about this myself. I still make very good money as a developer, but I'm fearful that all the people who understand my value will retire or switch jobs or something, and then I'll be competing with the twenty-somethings who work for $20/hour.

My personal strategy for success is this:

  • Work very hard at keeping my skills up to date, and let everyone know I'm doing so
  • Stay away from "commodity development" that anybody can do (CRUD screens, drag-and-drop development, etc.), and instead focus on those things that an experienced person does better than a novice
  • Take managerial roles when necessary, but turn down any promotion that is going to take me too far away from daily coding
  • Try to be a mentor to younger developers, and don't talk down to them or treat them with disrespect. (Every co-worker could eventually be a boss or a client.)
  • Keep plenty of money in the bank, so I won't be desperate if I need to search for a new job
  • Do whatever is asked of me, with a smile
  • Don't be a jerk
  • Schmooze

There are plenty of employers out there who value some gray hair in their ranks. If you want your salary to keep increasing, you may have to accept some managerial responsibilities, but you don't have to stop being a developer.

Don't let DrPizza and his ilk scare you. You don't want to work for someone like him anyway.

Kristopher Johnson
Good points - I have met several skilled developers who started their development career in late 30s.
Petteri Hietavirta
Following this plan will never get you into trouble.
Mat Nadrofsky
I'm not sure I'm valued so much as an employee, but I'm mid twenties and I have gray matter all over my hair. :D
PintSizedCat
+1 good post. I'm 47 myself and still coding :)
Anders K.
Great answer, +1.I'm only 19 but this "problem" has crossed my mind several times which makes me worry for the future. Thanks for the tips.
Dennis
I don't know a single developer making that little money ($20/hour). Can you even eat on that? You're rate is definitely suffering if that's the going rate for new hires at your company.
Jim
Come to Italy, 2 years experience = 6-7$/hour. Worst country in the planet for developers
Alex Bagnolini
+1 for keeping skills up to date. I've interviewed a number of developers who've been in the field for 15+ years and haven't even looked at a new language/framework/platform in the past 10. Experience is one thing, letting your skills rust is another.
SnOrfus
After almost 2 years I thought I'd accept this answer as I think it provides the most apt and positive answer to my question. That said there are some great alternative answers, and I'm shocked the question lead to such a rich thread.
Ubiguchi
+2  A: 

One of the best programmers I ever meet was guy who was 70+ y/o. No, he hadn't kept up with the times, but if you needed a RPG400 programmer he was the go to guy (no pun intended). I can only hope to be a 1/2 as sharp as this guy when I'm 70.

Booji Boy
+3  A: 

I mean, that sounds kind of flip. But I'm serious: most software developers are godawful and so I'd rather just go for the cheapest ones I can find.

Wow, you're the classic PHB.

You do realize that its people like you who have brought software quality down, thus lowering the bar and allowing more worthless programmers to get jobs, further bringing quality down?

Good Job!

FlySwat
A: 

You do realize that its people like you who have brought software quality down, thus lowering the bar and allowing more worthless programmers to get jobs, further bringing quality down?

Evidence please.

Have you never noticed how buggy software is?

That can't all be my fault, can it? Really?

I don't think so.

If I have the choice between hiring a bad expensive developer and hiring a bad cheaper developer, why would I ever go for the expensive developer?

The promotion track to elevate the rare good developers whilst still letting them develop is unfortunately extremely rare. If it weren't then I wouldn't have to regard developers in their 40s as somewhat suspicious, and I would probably still be writing software, but the fact is, I didn't like contracting (been there, done that; and contrary to the posters in this thread, crap contractors are absolutely abundant), and too few organizations allow people to rise up through the payscales without making them managers. I'm not a manager; I don't want to be a manager; I have no interest in being a manager. I want to be rewarded for doing my job well, and if that reward is management then it is no reward at all.

DrPizza
+2  A: 

Perhaps something interesting to throw out there, but ageism also exists when you're a young developer. Not when you hit a 'normal' age to be working for professional positions at, but certainly there's a concept of "well, you're only young so you can't be that good".

Interesting how things come full circle for older programmers. As a young programmer myself, the main benefit of working with older, more experienced programmers seems to be what you learn from them. And sure, the vast majority of people over a certain age are in management - but there's nothing that says if you like a position or just sitting coding all day, that as long as you have the skills you shouldn't be doing it.

James Inman
+1  A: 

Heh... DrPizza's not saying 40-year old programmers are bad by default, just that circumstances at a majority of companies do not produce good 40-year old programmers.

MSN

Mat Noguchi
Er, DrPizza said "If you're still writing software in your 40s you are almost certainly bad at your job", which is pretty close to that:http://stackoverflow.com/questions/37671/should-developers-worry-about-ageism/37825#37825
+6  A: 

I believe developers should worry about ageism, because typically it's going to be exhibited by PHBs who think that if your were any good, you wouldn't want to be programming. It will limit our ability to acquire interesting work in the future.

A number of times I've been asked in job interviews, "Where do you see yourself in five years time?" My stock answer, "Doing what I'm doing now: programming" seems to disappoint interviewers; clearly they think anyone worth their salt would aspire to management roles (strangely, I prefer job satisfaction to some vauge managerial power).

With my economist's hat on: on the other hand, demographically workers (regardless of age) will be in demand due to the aging population of most western societies.

Josh
+2  A: 

Well the arguments about programmers above 40 are simply stupid. Those have learned the basic skills and not just the click-here-click there get 100 thousand pages of code attitude. I suggest to see when in some areas you may get considered master. You'll hardly find them in the below 40 years area, (exceptions just prove the rule). It would really interest me to see comparisons of maintenance costs of code written elder-school and current educated. I'd be quite interested also in any figures on how outsourcing and letting down ones own educated programmer staff turned out to work.

I bet in the short run the outsourcing will win, but let wait till that code will get legacy....

It's definitly a thing of personality. If you do like to solve problems, do like puzzles and the like then you have the persistance to do programming. If you just see how code bloat is spitted out these days you shudder if you just think of the poor soul having to maintain that mess.

I for my part would more likely hire an older programmer, than someone having left with nothing more but some crash course about Java. It would probably be very funny to get suc a person to maintain some C code.

The base things to programmming have not changed a bit. You have to read code and you have to understand it. If the code is written in Assembler, C, Prolog, xfoowhatever does not matter, and it's get much more important once that the base has been set.... And thinking that we all know much better than the old-ones. Simply swept under the carpet achievements they laid the ground, just check Smalltalk-Workstations, Lisp Operating Systems and Unices...., see the hyped OO stuff.

Friedrich
+1  A: 

I would seriously consider hiring older developer for an integration project involving legacy systems. Nothing beats real world experience.

Petteri Hietavirta
+3  A: 

Ageism (or any negative ism) is a frame of mind. I've seen feeble old people I wouldn't put in charge of collecting milk money, I've also seen old people whose minds are sharper than tacks. I have a great aunt who has been legally blind for over 10 years, yet if you drive her out of her old home and around town, she can tell you where you are at any given point better than I can by reading street signs.

There is a common logical fallacy that goes something like "after the fact, therefore because of the fact" Or the "causation vs. Correlation" thing. If you get fired from your job in today's climate and are over 40, are you the victim of age discrimination, or are you being downsized because your salary (with 15+ years experience) is too large for the company to afford? The traditionally large salaries are reserved not for the elite of the elite in the programming room, but for the fragging suits that do nothing all day*.

*to the suits reading this, no offense!

Pulsehead
A: 

as usual, "it depends"

it depends on the person, not just their age

i have met brilliant developers in their early 20s who didn't have a clue about customer service, user focus, or the benefits of testing; some of them cannot hold a conversation with another person that is non-technical. These guys are excellent coders when given a precise box to fill. Just don't ask them to define the box.

i have met age 40+ developers who absolutely did not want to learn anything new, whether it was languages, tools, techniques, or even the names of the 20-something guys on the team. These are probably the guys DrPizza is complaining about. I hope. Some of them are still decent coders in their own realm, but that realm is shrinking and getting less relevant every day, which makes them even more cranky.

for younger developers, here are two questions:

  • are you a better programmer this year than you were last year?
  • do you expect to continue learning and improving year by year?

if the answer to both of these questions is yes, and we assume that most developers feel this way, then by logical induction it holds that older programmers are in general better than younger programmers - as long as they have kept up with the technologies that matter to your company.

Steven A. Lowe
+2  A: 

I find it funny that some of the posters seem to imply that age doesn't matter in terms of the quality of the code they produce. If you're older, you have a wider and deeper experience, which does allow you to make better decisions and write better software, you've made more mistakes in the past, youv'e had more time to get your head wrapped around some of the important problems. Granted, if you're young you can whip out the syntax all the same, but that's certainly only a small part of software development, design and planification mistakes are extremely costly in the business of building complexity. Also, while it is true that some of an older dev's experience is obsoleted by new technologies, much of the spirit of these things doesn't change. That's why it's good to know the fundamental stuff very well, because there is much power in recognizing bad reinventions of older things better though out. Everyone should be familiar with the power of LISP, for example, and relational databases.

I for one believe that I'm getting better and better with age, and I don't foresee this stopping anytime soon. A potential problem is that some of the people who are in charge of hiring in large firms don't understand what it takes to get good developers on board--they see them as replaceable monkeys, because they are so far from understanding what they do.

In summary: older developers have more experience, and thus are more likely to produce better software. Note that "more likely" is not a guarantee of "better". Some young people are talented, the problem with it is that it is a non-obvious judgement call to make.

A: 

I think if age (too young, too old) overshadows your capabilities in any way, it's not a healthy situation. As soon as perception is interfering with reality it becomes an issue of culture within the organization.

In terms of worrying, all I have tried to do is make sure I put lots of praise and recognition on others.

Most of it might not find it's way back, but, the key is to find out who will be quick to share the blame and quick to take more than their share of their credit.

Young stars often get treated poorly for being bright, young, and single and having the extra hours to put in that their more experienced colleagues no longer do, which is fine. Everyone's gotta pay their price on the experience train.

Jas Panesar
+2  A: 

Ageism is out there: I remember being a developer in my late 20s sitting in an open plan area next to my 30-something manager. He was on the phone to a recruitment agency looking for more developers. "Don't send me anyone over 30. If they haven't made manager by 30 they can't be any good". I promptly resolved to quit (OK there were other reasons too). Funnily enough, shortly before I was gone there was a reorganization and a bunch of 40+ "company old guard" developers were assigned to our team. My ageist manager simply couldn't deal with them; he couldn't even interact with them without a lengthy roundabout "hows the wife and kids ?" preamble.

timday
+8  A: 

As a developer pushing 50, I can't hold DrPizza's obvious lack of experience and mental acuity against him. After all, it wouldn't be fair to pick on a kid.

Oh, what the hell - here's DrPizza in a nutshell: "if you are good at something, you won't keep doing it."

How do these statements sound to you?

  • "If you are still performing surgery in your 40s you are almost certainly a bad doctor."

  • "If you are still representing clients in court in your 40s you are almost certainly a bad lawyer."

Of course it helps to have more to your career than just slinging code as you reach your 40s and 50s if only because there are so many people like Dr.Pizza there. But I'd have no problem hiring another developer at my age as long as they still loved the field.

Mark Brittingham
No, that's not what I said at all. Most people who are good at software development get booted out of software development and into management. That's not always the case, but it's broadly true; software development is treated as if it were blue collar; the "reward" for doing well is being given a white collar (management) job. It's not universal; some companies have a career track that allows developers to move up the ladder without stopping being developers. But most don't. So if you're still developing, it's because you weren't good enough to be moved off the development ladder.
DrPizza
+2  A: 

It's a huge problem in my life. I've developed videogames for over 25 years ... recently I had some cardiac trouble, and had to take a month medical leave of absence from my current employer (unpaid). The third day of my leave, I was notified that I had been fired. It's very VERY difficult to find meaningful work as a developer in a field where the average age is 25. Nobody wants to bother with you .. why should they?

In the videogame business, anybody over 40 is looked at with suspicion and doubt. It's pretty much always been that way. After my most recent experience, I'm deciding to not work in the field anymore.

At the age of ~35 I once had an interview with a games company after being out of that business for almost a decade. Soon turned out the only reason I'd even got in the door there was a recruitment shark had simply edited the birthdate on my CV forward 10 years!
timday
+1  A: 

im glad to have seen this.. i share your sentiment as i am also in the IT industry for a dozen years now, and ive started asking myself the same things...

in the past 5 years i've been doing both administrative and technical tasks. i just couldn't leave programming and all that crazy stuff behind. although management is as challenging as coding, but my heart and passion still longs for doing the dirty work..

my stand is if we can do both, we've got an edge. not everyone can excel @ managing people and doing technical tasks @ the same time. with age comes wisdom and i guess that's our edge over the newbies. if the passion for newer things are there, don't lose it. if higher opportunities comes our way, lets consider them! even steve jobs and bill gates has to pass the baton...

+2  A: 

Software engineering as a job really started mainstream in the late 70's. The web wasn't around until around '92 commercially. The reason that you only see young people (I was one of them in 1994 at 19 (33 now)) is because it is a young market. The oldest software engineeer you will see is around 50 (if they were 20 in the late 70's early 80's). The web is really even younger. The oldest web programmer you will see is about just under 40 if you consider real web development started in the early 90s. So just by the distribution you will see these patterns.

Even game development which I am in now, I see guys a bit older because it is a bit more mature, but still it is related the the age of the industry as well. Game development really started in the 80s.

So being programmers and analysts I hope people realize why they see these patterns, but there is something to be said about ageism due to this trend and the type of work programming as seen is. In fact the US needs to shake that and treat engineers better like japan, see Honda for that. Finance guys and marketing guys are needed and skills also needed, but so is real value creation and innovation via engineering.

With that said, programmers should have the desire to start their own thing or throw in some time in their 30s-40s if they want to code what they want to. But you should also have business, marketing, management and entrepreneurial skills by then. Not to mention more psychology, HCI and monetization capabilities in your work.

+3  A: 

Entrepreneurship is to succeed in life. Employment is to survive in life.

It is the absolute truth.
User
+1  A: 

What to do with the case when a developer loves to develop and has a senior position when he both codes and does some other staff?

I do not believe that a managerial position where instead of solving code puzzles you solve political puzzles is much better. Unless there is a huge increase in the salary, it might not be worth it.

Developer guys (both junior and senior) can leave the office at 5 and devote the time to their families and hobbies. Management staff often hardly ever notices it is a weekend now.

User
+18  A: 

I'm 49 and I'm a programmer.

Well actually I'm a DBA, IT consultant and Business Analyst too. But in my heart I'm a coder - and I think I'm getting better with age. And I make a nice living at it, thank you - but I put a lot of effort into setting myself up that way.

There has always been ageism in IT. I entered commercial IT relatively late in my mid-20 after being a research scientist (biological - but writing scientific code for analysis). WHen I went to move jobs at 28 looking for an Analyst/Programmer job one recruitment company told me I was 'too old'.

Ha. Since then I've done a rollercoaster so far as coding is concerned - followed the big corporate trail up though systems analyst to project manager by my mid-30s before deciding I really missed coding. Went to a small organisation as senior developer then morphed into DBA for 7 years - but started writing code at home which grew contacts and income until I started running my own consultancy a little over 10 years ago. I purposely don't grow larger because I don't want to spend my time managing other people, but I do have a large network of other consultants in complementary fields (graphics, management consultancy etc) I can collaborate with.

My clients are nearly all in the SME sector, most I talk to the boss directly and they no or limited development support inhouse. Age in this case is an advantage as experience with systems in business means that people trust me as I can both deliver software, and deliver the right software for the business context. There is something awfully satisfying about being able to go to a client and say 'you need to spend $10k on this hardware and software development to support this' and the client does it because they trust your abilities and the experience you bring to recommend that decision.

So I spend about 50% of my time writing code, 25% doing 'business IT consultancy' and 25% general purpose IT to support that - for instance several of the systems I've developed for my clients are web based - and I run the web servers to host them.

And lastly it's a great job for fitting with family life and commitments. I have my office in the house (large room, lots of computers and screens) and I work probably 10 hours a day, but it fits with family. I've been at home when my kids were small and when they've come back from school as they've grown older. I don't even have to be in one place - last week I had to see a client on site at the same city when my son is a student, so I go in, see my client at lunchtime, sit in Starbucks all afternoon coding on my laptop, then take him out for dinner. Perfect mix :-)

So ageism - phah. Ageism is only a problem if you associate with people who are ageist - and as a society we're growing older and many of those older people who do have work going are not going to be comfortable with giving it to ageist whippersnappers like DrPizza. There's plenty of opportunity for older developers, but you have to play to the strength of the experience you've accumulated and adapt. If you don't learn new technologies and stay excited by what's happening then that's your problem, not ageism.

Myself I see myself coding until I drop. I'm actually looking forward to being more flexible as I get older - when all the kids have left home we've plans to equip a camper-van with all the tech I need and wander around europe nomadically for a year or three working remotely as needed.

Coding is the best occupation ever invented. Who on earth would want to give it up?

Cruachan
Really nice story, I'm a young 20 developper and I hope that I will be always as excited as you about coding !
Nicolas Dorier
+2  A: 

I'm 39. I have been involved in hiring some people who were less than 26. I found that common negative traits amongst them included:

  • Failure to design their code before writing it
  • Failure to write documentation
  • Failure to prove that their algorithms are correct
  • Failure to study the problem domain
  • Too quick to partially learn a tool, then stop learning it
  • ... And then using that tool for every problem they see, even if it is not a good fit
  • Not good at understanding the 'Big Picture' of a system design
  • Not good at understanding and maintaining old shipping code.

Some of the positive traits were:

  • Worked hard, often willing to put in overtime for free, even getting close to burnout
  • Worked for much less $$$ than someone more experienced
  • Get easily excited over a project

Of course these are all generalizations, but with many of the younger people I've worked with they ring true.

All applicants must prove to me that they have mature development skills. Mature development skills are less likely to be found in an immature developer.

--jeffk++

jdkoftinoff
A: 

i'm now 28;i 'm also worying about future..technology chances so faster and expirence is less important than dynamism in software industry

dankyy1
Adam Porad
A: 

Age discrimination is a very real problem, especially for programming jobs. The way I see it, you can complain about it, or acknowledge it and try your best to mitigate the risk of being screened out based on your hair color (or lack of it).

I wrote this article dicussiong some specific strategies for both managers and job hunters who are concerned about the issue.

JohnFx
+1  A: 

I once supervised a guy near retirement age, and after a lifetime of working on operating systems and compilers, he was a very strong developer able to create ultra clean and reliable code. He'd done consulting and supervision earlier on, but his love for software pulled him back. Also in my group was a woman in her early 50s who was another very fine developer (we wrote a compiler). I've had the chance to work with many 40+ technology workers at places like IBM's T.J Watson lab, SRI, Unisys, Groupe Bull (including guys who worked on Multics!), Oracle, etc. and they all brought loads of experience, common sense, and responsibility to the table. Heck I've even seen older folks doing startups and working at Google.

Companies that have a good mix of older, younger, and in-between workers can be great places to work and learn from each other. Companies that strive to find the least expensive programmers can't be doing anything exciting enough to interest SO readers.

Jim Ferrans
+2  A: 

I'm in the same boat (41 years old, 17 years programming), and have asked myself the same questions lately. I'll assume that you, like me, enjoy programming and solving problems. Despite the economy, I'm actually pretty positive about the prospects for "seasoned programmers".

First of all, if you're good at what you do, there will always be a place and an opportunity for you. Will it show up on your doorstep, or your Inbox? Probably not. But good companies will always need talent, regardless of whether it's 25 or 50 years old. The trick is to find these companies (or start one yourself). The problem is, large swaths of the IT job market consist of CRUD programming in OfficeSpace-type cubicle hells. Technology is often a bolted-on afterthought at these companies, and they'll want to fill up the bottoms of their org charts with the cheapest keyboard monkeys they can find. I would argue that shops like this are not viable long-term career options, regardless of what the happy representative from HR says in the Career Development newsletter. Look for smaller software-specific companies; find somebody with a niche requirement that you satisfy. If you've got the technical chops for it, swing for the fences and look at Amazon, Google, or Microsoft. Hit LinkedIn and work your network. What have you got to lose?

Another reason I'm optimistic is that the computer industry is undergoing a sea change right now. New languages are popping up and becoming popular, new technologies are being announced regularly, and the whole way that applications are being designed is changing with Agile development, automated testing, and apps being "moved to the cloud". Lots of software technology is so new that everybody is starting off from Square One. In this case, a 22-year-old pup (who may not have even taken a Data Structures class in college) has no advantage over you, save perhaps in his willingness to work 80 hours a week. And real software companies know that they'd rather get 40 hours of quality code from a good programmer, rather than 80 hours of bad code from a hack. What would you rather have for dinner tonight, a succulent six-ounce tenderloin, or fifty undercooked White Castles?

Peter B
+1 for noting quality over quantity.
Jeremy McGee
A: 

Obviously age discrimination is rampant. This is one reason why any kind of IT career is a huge mistake. Add to that the desire to purge companies of American workers and you have a real nightmare scenario for an older American programmer, no matter how good he (or she) may be. There is no remedy in sight so my best advice is try to pick something that you can still be doing when you are much older and where your experience actually makes you more valuable.

Lee
A: 

The perception of age can be an issue, but this is part of the whole cat and mouse game that is getting a job. Some people really like writing code and just want to be left to do that and are happy with it. Rare, certainly but such people exist. The challenge of being a certain age may be that an employer could wonder, "How will this person still be here 5 years from now?" which can probably be answered in a number of ways really.

I've almost got 12 years experience and one thing worth noting to my mind is how the field continues to expand into new areas. For example, 20 years ago there wasn't a world wide web but look at all the jobs and companies that exist because there is such a thing like Google and Amazon.com to name a couple of the easier ones. What big companies will cloud computing create? Will IT security and practices be regulated to such an extent that there will be firms that do IT audits just like what is done with financials in US publicly traded companies?

I tend to look around and see opportunity as well as ponder what roles do I want to have in an organization and does my dream job have a name yet. For example, if someone really likes planning things but not necessarily managing projects, there may be some IT strategic architect-type position out there that will get a name eventually. Look how long it took for CIOs to exist as a title and directors within IT may have a similar challenge.

JB King
A: 

Hmmm..maybe. An infoword article that recently slashdotted

mhd
A: 

I read this somewhere:

"

Q - Who would hire you if you are a 50 years-old lawyer? A - Everybody!

Q - Who would hire you if you are a 50 years-old programmer? A - Nobody!

"

Comptrol
+1  A: 

An excerpt from a nice article covering this issue in detail:

So, assuming the numbers don't lie, well-paying industries like IT should be chockablock with 40- to 60-somethings pulling in handsome salaries.

But they are not -- and they have not been for some time. A late-1990s study by the National Science Foundation and Census Bureau found that only 19 percent of computer science graduates are still working in programming once they're in their early 40s. This suggests serious attrition among what should be the dominant labor pool in IT. Off the Record submissions

Something has been pushing IT workers out as they hit their high-earning, low-unemployment 40s and beyond. Is it burnout or pervasive age discrimination? What are the culprits contributing to this "Logan's Run"-like marketplace?

Comptrol