Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Possible Duplicate:
How old is “too old”?

I often hear from my senior colleagues and other peers that being passionate about programming is ok but at certain experience/age one has to stop programming and concentrate on managerial or architectural skills.

One needs to evolve and move to the next phase after few years.

My question: Is there any age or experience level when a person should stop (professional level) programming ? Does above things happens naturally ? I hope it's not true !

share|improve this question

marked as duplicate by Doug T., Mark Trapp Jan 5 '12 at 21:58

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

3  
You should stop coding when you stop loving it –  altern Jan 5 '12 at 16:00
    
    
Sounds like a cultural thing. –  user1249 Jan 10 '12 at 21:58

13 Answers 13

up vote 10 down vote accepted

Everyone's career works out differently becasue we have different needs and make different choices. I know plenty of over 50 programmers, I work with a good number of them because we try to hire talent not age and frankly we place the highest value on in-depth experience which the younger people just don't have.

As you age you have to make choices. You can stay a programmer, but that comes at a cost of generally lower salary. You can transistion to a tech lead which generally still includes some programming but also some management tasks. You can become a specialist (BI, architecture, systems analyst, database, etc.) which often pays better but is limiting in terms of overall jobs avaliable. You can move to a project management role or business analyst role and leave programming entirely. You might even decide to open a restaurant or buy a farm and leave the corporate world behind entirely. All of those options are open when you are young and eventually your choices will limit which ones are viable for you.

I personally have noticed that if you haven't transitioned to management by your mid-30's it is much harder to go there. But that may not hold true in other locations.

But the point I'm trying to make is that you control your career choices. You don't have to do what others do just because most people do that. Do what is best for you. And never think you have made an irrevokable choice. I have changed careers 5 or 6 times, life leads you to unexpected places sometimes. What you want at 20 is not likely what you will want at 50 and that's ok. Sometimes we make choices to kepp food on the table and pay for our children's education. There are alot of programmers who have become managers for the pay. There are others who don't care how much they offer, they feel the stress of management is not worth it. And others are pure programmers who can't ever even consider anything else because it isn't so much what they do as who they are.

share|improve this answer
    
totally agree, i wanna retire when i m mid 30s, and code for myself –  ERJAN May 5 '13 at 2:34

You never have to stop programming, ever, as long as you are enjoying what you are doing. However, your organization might have a ceiling that you reach, and you simply can't go into a higher position or obtain a greater salary unless you leave the company or leave programming and move into a leadership role as a manager or technical lead.

share|improve this answer
2  
And even though there are time constraints, I doubt you would ever be in a position where you are forbidden to write code. –  JeffO Jan 5 '12 at 14:12
3  
@JeffO That's probably true, but from what I've seen, many managers and leaders don't have time to develop software at work, with their other responsibilities. Some still work on personal projects at home, though. It depends a lot on your organization and duties. –  Thomas Owens Jan 5 '12 at 14:15
    
Especially if you constantly get interupted with meetings, phone calls, email, and budgets, you may never have a chance to get in the frame of mind to write some meaningful code. I'd try to be involved in the code review process if possible. –  JeffO Jan 5 '12 at 14:56
2  
There are also many open-source projects to which you can contribute. –  Neal Tibrewala Jan 5 '12 at 19:01
1  
My boss is the Product Development Manager, and despite a lot of demands on his time, he takes responsibility for the codebase of our most business-central apps. HIS boss, however, is the CTO, and I've never seen him code a single line. So, I agree; there can certainly be a ceiling beyond which you won't see much coding work. –  KeithS Jan 5 '12 at 19:48

Look at the case of Grace Hopper. She continued to work with programming until her death at 85. I remember seeing a 60 minutes special on her many years ago, she was a fascinating person. If you have a passion for doing something, then age is not a factor.

For what it's worth, I'm over 50 and see no reason to stop doing what I enjoy. There is still always a lot to learn and I enjoy that.

share|improve this answer

One thing to consider is how many will hire a 50 or 60 year old programmer? If all you do is code I don't think there are nearly as many jobs available for an older coder as compared to a early twenties to late thirties coder. One reason I know this exists (I have asked others in charge of hiring) is that a 40 year old manager is a bit weary of someone 15 years his senior. Will they follow my directions? How set are they in their ways? Will other gravitate and follow this grandpa coder?

Almost all of the job offers I get these days (I am 43) do require me to fulfill a certain amount of managerial/supervisory duties.

So I do think at a certain age it would be wise to change your focus from "only coding" to coding and taking on more supervisory roles. It is simply expected in this world of ours that older people will take on a more leader type role. And, like I stated above, many seem to naturally defer to older people.

So you may be able to only focus on writing code but keeping and getting new jobs will become at least a bit harder as you age.

share|improve this answer
7  
Getting new jobs in any field is harder as you age. However, where I currently work we several of our strongest programmers are over 50 and any manager who refuses to consider the stronger developers in hiring due to age is an idiot I wouldn't personally care to work for no matter what my age. My current boss is almost half my age and has no problem with that nor do I have a problem with him being significantly younger than me. –  HLGEM Jan 5 '12 at 15:32
1  
@HLGEM You must be an exception case. Most managers are terribly insecure about their precarious positions of power (Alliteration Badge!) and most feel uncomfortable about a subordinate who possibly makes more money than him/her. –  maple_shaft Jan 5 '12 at 15:59
1  
@HLGEM I'm impressed that your boss is that open-minded - what's the age range of the last three programmers he hired? –  robrambusch Jan 5 '12 at 16:33
2  
Why should it matter how old the programmer is? Don't all programmers outrank managers anyway? –  psr Jan 5 '12 at 18:35
4  
I'm about to turn 65. I have no intention of retiring. Except for right after the dot-com bust 10 years ago, I have never had a problem getting work. I get calls from head-hunters probably every week. I love to code and have never had a desire to be a manager. My current manager on my on-site job is 50 and is also the architect. He tries to code too but has trouble getting enough time to do so. The other firmware programmer is also over 60. –  tcrosley Jan 5 '12 at 21:07

I'm 59, and have worked as software developer every day since I retired from the US military in 1994.

What I've found is after about 45 there is no point to even trying to get a job with a company that has an HR department. HR people are afraid that if the new older hire didn't work that they would be on the receiving end of an age discrimination lawsuit. So they practice age discrimination up front.

The best bet for an older programmer looking for a job is to look for a small start up, preferable started by a former colleague, or at least a company small enough to not have an HR department. If you can talk to the actual development team there is a reasonable chance that they can see past your gray hair. At least this has worked for me.

I plan to continue as a developer until I get tired of the job, which hasn't happened yet. My present gig is pretty stable, but if it goes away I'll either find another job or make my own job.

share|improve this answer
1  
+1 For making your own job. But if you do that you will probably need some organizational and/or supervisory skills. –  ElGringoGrande Jan 5 '12 at 20:30
1  
Are you sure HR screened you out because of your age? Is there a chance you lacked the proper "buzz words" on your resume? I ask because I know I've prob worked in places where HR screened out loads of great (older) coders because they didn't have "AJAX" on their resume. For the record, I've been in the IT game just a few years now, and am really starting to appreciate the "been there - done that" attitude of my older colleagues who can spot fads and trends before I can. –  Graham Jan 5 '12 at 20:43
    
"Are you sure HR screened you out because of your age? Is there a chance you lacked the proper "buzz words" on your resume?" I don't why I didn't get a job, but I do what has happened when I've been in large organizations where a qualified older candidate was considered and rejected using code words like 'not a culture fit' or 'career ender'. –  Jim In Texas Jan 7 '12 at 3:42

"Should" is a vague, shifty expression. The useful thing to ask when making that decision is: What will happen if I stay anyway? There are a number of things I could think of.

  • I will gradually lose my touch and become unemployable if I ever lose my job. That's a tough one. No one wants to believe it could happen to them, so maybe it's true and everyone in the field is denial? On the other hand, Donald Knuth can program rings around me and you put together, and he's 73. This ties into the next point:

  • People (employers, colleagues) will think I am losing it and make work life much less enjoyable than now. That is also iffy, but easier to test: ask around! What do people who are younger/older than you have to report?

  • I will eventually get bored of the field altogether, because there is nothing new under the sun. I doubt that one very much, but if it happens, at least you can make a transition gradually without being under a lot of time pressure. (Unless it's in a direction that also discourages experienced individuals from joining...)

Overall I can't think of many reasons to quit the occupation preemptively, then.

share|improve this answer

If you love what you do why whould you ever stop doing it? If you don't like it you better stop today. But I guess there is no age or level of experience that will force you to stop coding. With so many new things to learn each year it will go on forever.

share|improve this answer

Think about your weekend.

You leave work on Friday, drive home, have dinner, and relax. On the weekend, maybe you do some work around the house, travel a little, partake in some hobbies. Basically, you enjoy your time off work and find other things to do.

Now, how do you feel on Sunday night? How does the thought of driving into work Monday morning make you feel? Do you get a sick, sinking feeling in your stomach at the thought of having to spend the next five days pounding out code?

Or, after having had a nice refreshing weekend, are you looking forward to getting back into the office and tackling some of the problems that remained unsolved when you left on Friday? Do you look at Monday as a chance to review last week's code while refreshed and revigorated?

If the first scenario is you, then perhaps it's time to get out now. If programming doesn't continually challenge and intrigue you anymore, you're just not going to be happy doing it. Simple as that.

If, however, you are constantly thinking to yourself "I can't believe I get paid to do something I love", then there's no reason to ever quit.

share|improve this answer

Never, if the only motivation to stop programming is because somebody tells you you should do it.

There are different directions of your personal development as a software developer, and being manager or architect are just some of them, but not all. In my other answer I tried to enumerate some of them with the skills you need to develop further.

The most important factor here is that you are satisfied with what you are doing and as long as you like coding there will be plenty of possibilities for personal growth and self-development.

share|improve this answer

I think it all depends on where you want to be in life. If you want to be an architect long term, then its never too early to start. Don't think of it as "giving up programming". Programming is like cycling and swimming. It will come back to you if you decide the other jobs are not for you. If you have an opportunity to try out different roles early in the career, it can be rewarding to try them out. Maybe you are a good programmer but you might turn out to be a "great" manager. I personally think that it is better to take risks earlier in life and get wiser soon. It may mean that someone will write "Hello world" in 5 strokes when you come back and you may not be able to match it but hey it's life you will get there in due course. Why not try things and figure out for yourself what you are best at?

Also, bear in mind that depending on your country, your financial rewards may be tied to the roles you pursue. It never hurts to get a new experience and make some money in the process. Money earned early in the career is your best hedge against "bad jobs" later on in the career. Also, shifting between roles is not a one way street and you can always switch back.

Good luck!

share|improve this answer
    
I liked this idea. –  Hassan Matar Apr 15 '13 at 17:15

One needs to evolve and move to the next phase after few years.

That part is right. After a few years move onto the next thing that excites you, if that's a management and architecture role, great! If it's not but it's more of a lead developer role with some project management, great! If it's just pushing your skills forward with new technologies and new techniques, great!

Never let conventional wisdom dictate your own career. I've only been programming professionally for a few years but I've already looked at some of the management aspects as I had to do it briefly and it seemed interesting, but I can't see a point in the next 20 years where I'm ready to give up the fun part of the job.

share|improve this answer
    
Working for others got old for me pretty quickly, especially when you end up actually doing the managers job for a third of the pay and taking all the product ownership responsibility because he/she is too chicken**** to commit to anything. Who me ... Bitter? –  maple_shaft Jan 5 '12 at 16:03

I worked as an IT contractor for blue chip corporates, mostly banks, before recently venturing into the start-up world, I worked in a number of roles; project manager, developer, network admin and support.

Great organizations cultivate a culture where their employee's are valued assets who's development is fundamental to their overall success, and equally skilled talented people are more likely to stay if their skills are developed. This often means that people are moved around to develop their skills, which is a good thing, bored, demotivated people are unproductive.

If you are talented, passionate and still want to contribute productively within the development team then it should be your choice (if remuneration is not a factor) should you wish to move to another IT role, or something completely different.

Age for talented people is not and has never been a factor, this is, in addition recognized by current employment law in the UK.

share|improve this answer

Stopping programming is a terrible way to work on architectural skills. Architecture is the broad strategy for what code does and how it is organized. As an architect, you should understand the code you stratigize for, and experience writing code with that strategy, so that you can get feedback on how good your architecture is. Good architecture makes it easy and straightforward to write code that solves your problems.

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.