harriyott.com

19 February 2006

12 career moves for developers, without becoming a manager!

So, you've been a developer for yonks, and you've just realised that you'll carry on being a developer for ever unless you get promoted (or fired). The obvious career path seems to be project management, then department management, then manager management (a few times), and finally director. But good developers don't necessarily make good managers. I know this, because I've worked for a couple. Most developers don't seem to want to be managers anyway, so what else is there?

  1. Lead Developer. Take charge of a major component, and assist junior developers along the way. Make some big design decisions, and discuss with seniors how they will function.
  2. Software Architect. Design the big picture, how the major pieces interact, and steer other people while they're building it.
  3. Technical Strategist. (Probably not called that, but I don't know what they're called.) Become the expert for generic things across all the development teams in the organisation: coding standards, release management, re-use strategy, daily builds, researching new tools, technologies and techniques. Implement these across the teams.
  4. Entrepreneur. Finish that handy utility, web application or telepathic UI that you've been tinkering with for months, pretty it up, and start selling it.
  5. Educator. Work for Learning Tree, QA, or whoever, telling other developers how to do it, or lecture at schools, colleges and universities.
  6. Contractor. If you've been working on the same sort of thing for a while, switching to short-term contracts for various companies may introduce some different challenges.
  7. Consultant. Tell customers what approach they should take with their software projects, maybe designing or coding it for them.
  8. Evangelist. Work for a large software product company, and extol the virtues of their latest products.
  9. Author. Write books, articles and blogs about programming.
  10. Change career. Work for a small or expanding company where programming skills wouldn't take up the majority of your time, but would give you an edge. Many smaller companies wouldn't employ a programmer, but an estate-agent, shop-keeper or magazine editor that could rustle up things to interface to third-party systems and write server-side wizardry for the website would be valuable.
  11. Salesman. How often do salesmen promise customers completely unrealistic features? Have a real advantage over other salesmen by actually understanding what you're selling (and talking about!).
  12. Software Tester. Catch the bugs that other developers introduce, and (as delicately as possible - developers are fragile) tell the developers to fix them.

14 Comments:

Anonymous Mr Angry said...

Nice list. What career path have you followed personally? Also, some food for thought, have you considered what temperaments might be suited to what paths?

Blogger Matt said...

13. Domain Expert.

If you write software for a particular domain (financial analysis, neuroscience, fluid mechanics, etc.), consider spending more time solving domain problems and less time writing software that implements some other guy's solutions.

Blogger Simon said...

Mr Angry, I'm still a developer, and I'm actually really enjoying it. The question does come up from time to time though..

Matt, great suggestion. If you have software skills as well as domain knowledge, then a new startup could be in order.

Anonymous Anonymous said...

Nice article. I don't know about being a tester though - boring!!

Anonymous Mike said...

I went the consultant/contractor route about a year ago. Very nice change of pace so far. I've learned several new skills and worked on much larger scale projects than in the past.

Anonymous Anonymous said...

What about Business Analyst. There are not enough people out there who can successfully combine a strong business knowledge with tried and tested technical knowledge. I know that this role is often one step down the ladder from a Project Manager, but I think its worth a suggestion!

Blogger Simon said...

Business Analyst. Nice one.

Mike, I've quite fancied the contractor route, but I live in a very sparse area as far as tech companies go. I think my commute would be quite long if I became a contractor. Glad it's working out for you though.

Anonymous Anonymous said...

13. Blogger

If you know how to make lists of loosely connected items, you can use Digg and Reddit to increase your hits astronomically!

Blogger Simon said...

You're right - it has gone astronomically :-)

I suppose I should have followed the normal etiquette and chosen an "anonymous" user name for Digg and Reddit.

Anonymous Jason Hoekstra said...

This is a fantastic post. Certainly provides viable options for developers who are want to stay in the field, but would like a change of pace from the 9 to 7 daily grind.

Anonymous Simon said...

9-7? Goodness, you do need a new job!

Blogger Roman Rytov said...

Very nice list. I tried to come up with something similar when counting options here: Counting options

Blogger Rajaram said...

Just the kind of article I was searching for. I personally prefer 11. I however am not sure how to gradually shift to Pre-sales from developer role. Would be glad if you could direct.

Blogger Carsten said...

I believe a Technical Strategist would be a System Architect, i.e. the architect that focuses on a higher level than the software architect.

Post a Comment