Many developers seem to think that they are limited in their career options once they finally reach the point when they no longer wish to be directly involved in the coding process. I too reached this point in my career, and after some soul searching I basically decided that there were 4 paths that I could follow:
This is usually the logical choice for those who still wish to maintain some technical involvement but move into a higher visibility level on the corporate ladder. The majority of architects arrived in their current position by slogging it out as a senior developer or technical lead for some development house ( that’s me 🙂 ) and as such have a really good understanding of the coalface technicalities of designing a solution.
Again, senior developers usually have a decent understanding of the SDLC and as such would have some valuable insight into costing and effort estimates. However one needs a lot more exposure to resource juggling and considerations of resources outside of the development team.
In my experience developers can be quite insulated from clients, BA’s and even the entire testing process. A PM will be involved with all these stakeholders and it is a really good idea for any developer wanting to step out to gain as much exposure as possible to these facets.
Heading up a team or teams of developers at various client sites is another option that a ‘retired’ coder could follow.
The obvious skill that needs developing in this area is ‘contract negotiation’. As a developer you will likely never have been exposed to this aspect of the project. There are areas of the SDLC where a PM and DM’s roles may overlap but I see the DM as more a solid line reporting path and the PM as a dotted line. A DM will need to be more involved in H.R. issues and not many people enjoy this aspect of the job description.
Complete Career Shift
This is pretty self explanatory, but if you want to use your technical expertise then perhaps you could be a technical writer for a local magazine or website – or you could write a book.
You could become a teacher / trainer of IT or even assist with technical documentation.
I would advise spending some time doing due dilligence to each of the choices by researching the domain knowledge within each discipline.
Spend some time researching the various architecture frameworks eg: Zachman, try and think of where you would use each one and spend some time trying to apply each framework to projects you may have been involved in.
Find out what the pro’s and con’s of each framework are and read as many case studies as you can on each one.
Research the various methodologies eg: PRINCE2 and try and apply them to projects that you have been involved in. Also, do some practice project costings to see how you would have done in estimating the budget for a particular project
Get involved in ‘first contact’ scenarios when a project is proposed and a client is introduced.
Get some exposre to business law, contract etc and learn from those who have held the position in the past.
I am sure that there are many other options out but these are a few that came to mind as I pondered my own fate.