views:

2565

answers:

30

As the question states, can you realistically (outside of large software firms like Google, Microsoft, IBM) be an "architect" or similar when you reach your 30s?

Is project management the only natural career step after developer?

+19  A: 

Either that or "Highly Paid Consultant".

Dev er dev
IMHO this is the best way to be taken seriously and still do what you love.
darron
+29  A: 

I'm 50, and still cheerfully under-achieving as an individual contributor.

"But on me, it looks good"

John Saunders
Me too (*only* 47, though)
Paul Tomblin
me too...only 25 though...Project Management? >shudder<
Jason Punyon
I should mention talking to a colleague from S. Korea, who told me it is expected (if not required) that they become managers, or else failures. Continuing as an individual contributor was not an option he was permitted. Explains bad management in his opinion.
John Saunders
This is basically what I've been told - head to PM role or be looked upon as a freak
Arec Barrwin
In Korea, I expect it's true. Here, "I resemble that remark"...
John Saunders
Under-spelling, too. Thanks, David.
John Saunders
@downvoter: Five months later. Please say what problem you find with this answer.
John Saunders
@Yet another downvoter who doesn't want to matter.
John Saunders
@downvoter: I see you like to underachieve - you apparently don't want to make a difference by saying why you downvoted.
John Saunders
+1  A: 

If you are a really bad programmer, may be yes.

Frederick
+5  A: 

The startups offer a very fertile ground for experienced developers, people that can start from scratch and grow with the company and projects.

Of course is a riskier option than the large IT firms, but at the same time in my experience a very rewarding one.

I have done everything from senior developer to CTO (not in that order) in a variety of startups over the past 10 years

webclimber
I'd love to do a startup again. Long hours, low pay, but fun.
Paul Tomblin
Many people have families and large financial obligations by the time they are in their thirties and may be less interested in the risk associated with a startup.
JeffH
+26  A: 

There are plenty of opportunities.

  • Technical leadership/architecture.
  • Project Management
  • Technical Lead/Project Lead (this is NOT Project Management)
  • Startup
  • Consulting

There are others, but these are widely out there.

pearcewg
+21  A: 

I really hope not - most people have to be in their thirties to have ten years' programming experience, and that's when they start to get good!

teedyay
I wonder if that actually contributes to the migration - once you're really good at something, it's harder to find challenge.
Sarah Mei
Sarah, you've got to be joking! Once you're really good at something you can actually take on the real/serious challenges. Until then you are just struggling along trying to improve your level of competence. Are you in management by any chance? With a comment like that you sure sound like it.
Ash
@Ash - if @Sarah is in a non-software company she's dead-on accurate, the problem is many shops don't have any "serious challenges", as they need to KISS for the junior developers. Also many non-sw companies may only have one "IT" department, so not much chance of a lateral move.
Ed Griebel
+3  A: 

This is a great question and i look forward to reading the responses it generates. In my opinion, i think it would be a shame to "force" a person who loves doing a specific task into management if they do not want to go in that route or feel they have the skills or personality. It is the perennial case of the excellent programmer who becomes an awful manager after he's pushed-promoted to a management position.

some people just want to program, or do graphic design. Why should your time and experience punish you by requiring that you be promoted?

Andres
From what I've seen nobody "forces" someone into management, you can stay in development if you want, you'll only get cost-of-living raises because there's no positions above a "Dev III" and everyone will know you as "the guy/girl who passed up a great opportunity".
Ed Griebel
+5  A: 

I was at a conference last Friday and there were quite a few older folks there that had just recently been laid off. It struck me how one person in particular told me that they were "thinking about" signing up for linked in. Another told me that they didn't really get google.

I think the most important thing for long term success is keeping up. Make sure that when people search for your name they see that you are involved in modern technologies. Don't dismiss new things as "fads" as the whole industry is really based on "fads".

Rick Minerich
How can you not "get" google?
EJB
+14  A: 

Why should I drop being a developer just because I got older? I gain more and more experience and become a valuable expert. But I need to keep fit and it's only reasonable that I continue developing software. If I enjoy all of this why should I change to anything else?

sharptooth
+4  A: 

No, we have a separate branch for technical specialists. With same band and salary as project management.

And even my boss is an almost fulltime developer.

Gamecat
I worked at a company (GE Aerospace back in the 80s) that did that. Supposedly. The truth was that there was a limit to how high you could go on the Tech side (unlike management), and going up the tech tree was a good way to atrophy your skills.
T.E.D.
For the most part your growth is extremely limited on the technical path at larger companies. The main reason is the competition is much higher. There are only a small number of high level technical positions available. If you don't have a PhD then those paths are tough. Yes...
Dunk
exceptions exist if you can get in on some ground-breaking project. But that involves every bit as much luck as true skill.
Dunk
+2  A: 

I'm currently 47 years old. For the last 6 years, I had the ultimate position - it was a new "start up" within Kodak. That meant I had the good pay of a big company (instead of the low pay and stock options of a real start-up). I was part of a small programming team, responsible for the database design and the server code, and half the GUI code as well. It was great. Unfortunately, the credit crunch ended that start up, and so now I'm doing grunt contract programming work at a company that does payroll stuff. It's stifling, but I've got a side-project in my spare time to develop an iPhone app to keep my skills up.

If you're skillfull and lucky enough, you can stay a coder as long as I have, and hopefully longer. It's been a long fun road, and I wouldn't trade it for anything.

Paul Tomblin
+5  A: 

I'm not sure what you are getting at. I'm in my 40's happily developing software, and frankly most of my co-workers are older than I am.

If you are talking about ways to make much more money, then you really have two choices. You can go into management. You might not start off making much more there, but the possible upside to management is theoretically limitless.

I say theoretically, because companies have a culture, and this includes where they like to promote people from. Some companies like to promote from sales, some from accounting. If none of your upper-level managers came out of engineering, you probably aren't going to get there either.

Your other option is to go into consulting. The upside isn't quite as high here. But it is still quite high. If you write books and make yourself famous, you can really command a high price. The downside is that you don't have quite as much security. You have to pay your own insurance, don't get paid holidays or sick days. In theory you will be the first to loose your job when things go bad, and you will generally not get asked to help out with projects that are well run and in great shape.

T.E.D.
Beware companies that promote only technical people to positions of management too. "A friend of mine" works at a large company where most of their IT management are promoted developers wearing both project and people management hats...and not doing well at either one. The worst part is your estimates are often debated and discussed to a deep level because they used to code too.
Ed Griebel
Most lower-level managers suck. That's why they haven't been promoted yet. Former developer managers just have their own special way of sucking.
T.E.D.
+1  A: 

Absolutely not. You have the choice if you want to stay on a technical track or move onto the management track.

When I say you have the choice, it really comes down to you and what you like to do. If you enjoy managing people, seeing the big picture, and helping to align resources for success then by all means, go into management. On the other hand, if you love to code, love solving technical problems, and are more comfortable coding that dealing with the political minefield that management can be, then stay technical.

Then once you decide on what track you want, stay there. If your company wants to move you onto a different track because you are senior and they promote senior people that get things done, then honest with them. In my experience, senior technical people that are good and wish to stay technical are respected by management.

Mark Thistle
+2  A: 

No. There are lots of alternatives. I remain a programmer and program designer and my 30s were a long time ago. Fortunately, the companies I work for recognize that techies are often good at being techie and not so good at other things and provide a career path for those who want to remain techie - that would be me.

Jonathan Leffler
+1  A: 

Not all all. I am 41 and have been developing since my 20's. While project management is an option for me, I still prefer writing code. Of course, things do change as you get older.

Today I am more counted on to help with design and architecture, and project managers sometimes look for my direction to help guide a project.

But no thank you, I don't want that job!!!

I much prefer to live in my little cave, hacking away at the keyboard....

+10  A: 

It is definitely possible to stay in a "hands on" type of position past your 30s, but because with time you (hopefully) gain experience and hindsight there will be some pressure put on you to take on some kind of management role.

From the employer point of view this makes perfect sense as having a clueful person in charge of decision-making is a guarantee of return on investment. However many employers don't necessarily realize that a technical expert doesn't automagically turn into a good manager (see Peter Principle)

Now if you are good at what you do, and don't want to get into management type of positions, there are ways to keep growing:

  • Within the same company by moving to a technical-expert type of position, where you don't really have management duties. In smaller companies however these types of positions are less likely to exist, or if they do exist they may not be recognized properly.
  • Still within the same company if no technical expert opportunity exists you can take on some limited management duty, but in my experience this is a tricky path to take as in many instances I've seen this type of role inexorably evolve over time toward a full-time management position.
  • By moving to a "Highly paid consultant" type of job. This can be both a financially and personally (recognition, broadening your own experience) rewarding experience. In a job market that is good it can be a risk-free move as this will always look good on your resume even if you didn't enjoy it that much.
  • By moving to a larger company that offers a career path that matches your desires. Most large technology companies have both technology-oriented and business/management-oriented career paths. If you are really-really good in some companies you can get to VP-level type of salaries while staying completely off management.

If the company you work for does not offer a career path that would allow you to grow while staying in a technical position then you need to stop and think about your own goals:

  • Is saying no to a "promotion" into a management role even an option? Sometime employers are very supportive of employees not willing to move into management, but very few people actually dare to answer "No thank you." to proposals for such a "promotion".
  • Are you ready to keep a lower-paid job just to stay away from management?
  • Are you ready to change employer? Is your experience marketable in other companies?

And finally I wanted to point out that your question is really a question from a "young" software developer.

My point is that as you grow older what you enjoy in your job will evolve and you may even one day (shock) consider management positions as desirable. In my experience this is heavily influenced by the manager "role-models" that you'll meet in your professional life:

  • Some managers really focus exclusively on the administrative side of management and don't get that much involved into technical decision making, which for most readers of this site is not precisely exciting.
  • Some are really making a significant difference in the project, they not only deal with the administrative side but are acting as influencers in the technical field, and leverage their own experience. I've been lucky in the past to be working with such inspiring (and very demanding) managers. They can be a pleasure to work for, and if you are to become a manager one day don't forget that you have a choice as to how you want to handle things.
Laurent
A: 

In your 30's eh?

I too have been called an expert (ex=old and spurt=drip-under-pressure?) Okay it's an 'old' one ;)

But...You probably did manage to accrue years of valuable knowledge coding/architecting systems that make other people rich. Well played.

Maybe its a great time-of-life to start exploring one's entrepreneurial side? There is only CEO at the top of the ladder... and he's a drip. Oh wait.

Konrad
A: 

Project Management? That's a horrible choice. How about this instead: Work your way up through engineering management, but be one of the good managers who still codes. Eventually, become a VP of engineering... Or, start your own company, call yourself whatever you want and get filthy rich. That sounds a lot better than project management!

dicroce
"be one of the good managers who still codes". You must work at a small company or on small programs. Good managers are too busy doing "management work" to be deeply involved with coding and technical issues. IME, the ones that try end up being lousy at both tasks.
Dunk
I have never worked at Microsoft, but I am currently reading a book about the creation of NT, and their was a whole discussion in their about how engineering managers at Microsoft code. So, I don't think its just little companies...
dicroce
+1  A: 

Make sure that you know what you're talking about when you say "program management." It means different things to different people. I'm out of my 30s (by a bit) and I try hard to be a program manager like Joel describes in addition to the individual technical contributions as / when I have time.

I also get to go all over the world and do some crazy fun stuff every now and then. When you look up from the keyboard, you might realize that there are a variety of interesting and challenging opportunities in addition to your developer role. I know I did.

Bob Cross
A: 

It would seem that this depends a great deal on the company. Where I work right now, there are engineers that have been engineers for over 30 years, and still write code on a regular basis.

I think this is something definitely worth investigating at each company you interview with; simply ask them about career paths, look around and try to see if you see any developers that look past their 30s, etc.

Jeff Barger
A: 

If you ever think there's an "only path", it's because you've got blinders on and don't want to see what other options you have.

Mike Rowe has been seen on TV castrating sheep with his mouth for his job, but I would hazard to guess that this is not the only career path for opera singers.

Ken
+5  A: 

I think what you have to think of is that what position you want to be. When you are 30, you should think of what is your career and what do you wanna be after you understand yourself. e.g. what strength you have..etc.

Life is not like computer game that you advance level by level.e.g. junior developer -> int. developer -> senior developer -> team lead -> architect or dba -> business analyst -> Project manager -> senior Project manager -> C whatever O.

NO.. if life is that simple, that will be so boring.

I was a developer, team lead, and then I was a boss + PM for my startup, then now, I am developer again doing something I like.

My experience and recommendation is, the role or developer and PM are so different. People think that when someone get experience he/she can be Project Manager. I see people around me was a great developer but a poor PM, or a poor developer but an excellent PM. Why? because they require different skill set and face different situation. Being a PM is more than using the MS Project or SVN, budget tools....etc. it is People Management as well. How to bring your team together and go for the same goal.

Therefore, if you think you are a PM type of person, go for it. However, if you don't like deal with people and like to create things, why don't be an excellent developer or architect? :)

Murvinlai
A: 

I worked with a guy called Jurij who joined Experian when it was founded in 1974. He was a coder then and was still a coder for Experian when I left the company in 2004.

When he started, his team leader was John Peace. By the time I joined the company in 1997, he was leading the company and had grown it into a vast multi-national.

Jurij felt no bitterness or resentment towards his former colleague, though by then their pay packets must have been an order of magnitude or two apart. Both men had found the roles they were happy in, had become the best they could at what they did and gained a lot of satisfaction from doing so.

Personally, I know I'll always be a Jurij rather than a John. So long as I can keep my perspective, I think I'll always be happy with that too.

teedyay
A: 

The only path is the one that is right for you. A programmer - someone who truly loves to solve code related problems - should remain a programmer if that is what they desire. Don't confuse titles with career paths, there are many Sr. Programmers and other related titles. I think IT gets a bad rap from people who move to a position they are truly not right for just for the $ (even though $ is good) and a title (never has done much for me). This is why many project managers are ineffective, or IT Managers poor managers - people should pursue what they enjoy and depending on their ability placed at the right level.

meade
+1  A: 

We're in an exciting period of time in software development. Platforms are richer than ever before. I enjoy being laison to Sales and helping to onboard clients, turning opportunities to projects. It's rewarding to see a wary client up front thrilled and excited about the soolution we built for them. I've managed to get myself into the legal side of things, which has always interested me and put my contract law courses to good work. The PM in my shop crafts the SOW and works with the client and legal to negotiate the contract. Also, working with legal and your client to negotiate the IP and licenses provided for the solution is interesting to me as well. So, I guess for me in my late 30's, I find the balance between Account Management, Sales, and Project Management rewarding in my career.

A strong technical background from working in the trenches, and a strong interest in the business side of software development prompted me to go back to school as an adult and finish my MBA several yrs ago. I find operations a good career path for me now and wouldn't change a thing I've done in the past. Do and follow what you love. I still crack open vi to write some csh or korn scripts.

-Paul

+1  A: 

I left development and tried my hand at project management type roles and found it boring and frustrating. I hated the fact that I had no control over the software that may have been buggy, I couldn't go and look at it myself and being a developer previously, this was just too much for me. So I went back to development.

Ideally I would have liked a role that combined some project management with software development so I could have the best of both worlds I guess.

If you enjoy developing, then don't leave it. If you fancy trying your hand at project management, try and obtain a role where you can do both.

Ian Devlin
+1  A: 

I think one path to continued career growth as a developer is to become an expert in the business that you're writing software for. That skill can only be gained through experience. Software design books often portray the developer's role on a project as working with the domain experts to design software to automate their processes. My experience is that developers are almost always asked to design "magic bullet" software in concert with massive business process overhauls. This happens because the current process sucks, the "domain experts" are busy and/or clueless, and they want software to magically make all their pain go away. A developer who can fully participate in or lead business process designin and the software to automate them is a very valuable resource (and hopefully more highly compensated).

Jamie Ide
+1  A: 

This problem is not unique to coding. Engineering and Chemistry have similar issues. A family member of mine, an Analytical Chemist by trade, is now a software developer. The 20 years of experience as an Analytical Chemist becomes his niche as a developer, as he understands the user very very well thanks to his experience as a chemist.

Not sure how you apply that to programming; but perhaps part of the point is that its different depending on the organization. Some organizations see the world in that way: "manager by 40 or you fail", some organizations value technical people for what they are and don't insist on migrating people to roles they have no interest in just because of age. The OP mentions mega corporations like Google/MS/IBM as examples of where mature developers might be welcomed, but I don't think its limited to that. the Chemist-now-Developer I refer to works at a mid sized non-profit organization as a technical contributor, though he's well over 50. Don't assume all companies work the same way; you might be very much happier somewhere else.

Kyle Hodgson
A: 

I have tried this path. I even got a PMP qualification. Project Management is NOTHING like programming. I discovered I am much better being a senior developer.

(p.s. in an ideal organisation, a great programmer should be able to earn more money that a manager.)

whybird
A: 

It depends on every individual, most people I have seen prefer to get into managerial role and project management. With good technical experience and some managerial experience one can get into project management. There are different training and certification programs available for the same. If you want to undergo such training then I would suggest you to go for Microsoft's MS project 2007 certification. Check this for more details http://www.microsoft.com/project/en/us/train-learn.aspx

emily