12

At some point in their careers developers tend to see a fork in career paths between something that leads to Software Architects (dev -> senior dev -> team lead -> architect) or more business-related paths like Business Analysts, Project Managers, etc.

As I look at the salaries, requirements, and "time to get there" the Software Architect path appears unfavourable. It tends to require certification, you handle a lot of responsibility (anything that is a technical problem lands on your head), and the pay is not great compared to the alternatives. It is also the terminal station in the career path train (these people never become VPs, etc in my experience).

Can someone shed some positives? Personally, I like to code and the thought that "moving up in life" necessarily means getting out of it makes me very sad. That being said I am having a very hard time justifying sticking to this path in terms of lifestyle. Am I missing something obvious?

EDIT

Thank you all for your input. I understand the fallacy of my question in that it's hard to pick one right answer. At the same time I imagine that my sentiment is probably experienced by others, and your answers will be useful to them.

EDIT 2

I understand that architect is an archaic term, it's just the thing that popped into my head. Where I work now it's called 'Senior Technical Specialist'. I'm generally referring to senior developers that get to call the shots. These kinds of people will always be around.

8
  • 2
    Your assumption about getting out of programming because of age is not accurate.
    – user8365
    Commented Sep 10, 2012 at 19:46
  • @JeffO perhaps I didn't word it right. By "getting on in life" I meant make more money / have better working conditions.
    – MrFox
    Commented Sep 10, 2012 at 19:48
  • 1
    Are you sure work conditions that don't allow you to program will be something you consider enjoyable?
    – user8365
    Commented Sep 10, 2012 at 20:24
  • So you do not want to be a manager but you do not like that if you go the Architect route you can not be a manager? There are positions you can move into from the architect role. And I have seen managers promoted from the architect role. Commented Sep 10, 2012 at 20:55
  • 1
    I don't know about your company, but the architects where I am get very good compensation. They also have the potential to become AVPs of I.T., and I.T. Portfolio Managers. Commented Sep 10, 2012 at 21:34

3 Answers 3

4

Your question isn't exactly clear. You need to identify what you see yourself doing in 5 and 10 years. If your ultimate career goal in life is to become a technology or business executive then you will want to pursue the career path that takes you in that direction.

The reality of the technology industry and software in general is that managers typically don't write code. If you see yourself in 10-20 years writing code because thats what you like to do then fine, do that. If however, you really want to be running the department in the same amount of time its time to realize that you won't always be writing code. Again, this is the decision and life planning you have to do on your own, we can't provide that for you.

However, I can talk about the Architect versus the Developer roles. What I think you have rightly pointed out is that it is often far easier to make the switch from a Business or even Systems Analyst position into that of a manager. The easiest explanation for this is that these are the people who review and study the organization(s) that the software aims to fix. They have the most insight, knowledge, and background which make it really easy for two things to happen:

  1. If a replacement candidate is needed, they already have a lot of the business background knowledge making their promotion a simple decision.
  2. They often have direct working relationships with executives and senior managers at the firm. This is a no brainer in terms of promotion. Out of sight, out of mind.

So again, I return to my original point, what do you see or want to see yourself doing in 10-20 years from now as regardless of the current career path and what you like to do now, this will dictate what you should be looking to accomplish in the future.

6

That was certainly true as recently as 10 years ago. Now there are other options.

Many companies understand that business analysis, programming, project management and people management are all different skills. And every company seems to handle that knowledge differently.

If you're good enough, you can become a lead developer in some companies and earn a lot of money doing it. Often more than your managers, certainly more than your project managers or BAs.

Personally, I got out of programming because I became more interested in the process of software development, so I became a manager. And then I got bored of managing (after a decent time, not the next week) and got back into software development. With a pay rise.

Architects are pretty much a thing of the past. Or they should be. Most companies figured out that having one or two developers who made all the technical decisions, but never had to live with those decisions (while mere developers did have to), is a bad idea.

The software industry is still relatively new and still in flux. You can basically do whatever suits you, as long as you find a company who want your skills at the price you want to sell them.

10
  • 5
    +1: Architects...should be a thing of the past. IME, every company that has had architects also had horrible application architecture. Commented Sep 11, 2012 at 3:15
  • @kevincline The concept is good IMO but it seems in practice that it becomes a political favor or excuse to justify an overpaid developer. Few people I have met were worthy of the title, and none of those were SA's. Commented Sep 11, 2012 at 15:23
  • @maple_shaft: If you're going to take a high-quality developer out of the value stream, to do that kind of stuff that never gets done otherwise, there is a lot more to be gained from putting them on SCM/DevOps (ie. put them to work around the product, improving other developers' lives, not in the middle of the product where they can't see the bigger picture). By all means, have a team that work on core libraries, but don't give them superiority over the developer's they're working for. Let them provide a service to others in the same way that others provide a service for the business.
    – pdr
    Commented Sep 11, 2012 at 15:50
  • @maple_shaft: I also like the concept of Coaches - someone who's sole role is to eye the room and look for people struggling, then go and help them, but I've never seen that implemented so I can't say if it works in practice.
    – pdr
    Commented Sep 11, 2012 at 16:01
  • 1
    @suslik: But a really good leader doesn't have time to lead and stay in the trenches. That said, I would agree with you that the best leaders were in the trenches recently. And that's why I think you'll start to see more people drop back to development for a while then go back to management. As for the coach, I think you misunderstand what I mean. Those people aren't leaders; they make no decisions. They help YOU learn to make decisions for yourself and the team.
    – pdr
    Commented Sep 11, 2012 at 20:43
3

Am I missing something obvious?

Developers by and large never transition to BA roles. PM happens on occasion, but it is uncommon; it happens most often to developers who find they don't like the technical work, or don't have the chops to be a Sr. Developer. Neither position is a promotion for a developer.

It is also the terminal station in the career path train (these people never become VPs, etc in my experience).

Some do. CTOs and/or VP of engineering/R&D often come from the technical side of things.


The main career path for a developer is Junior -> Developer -> Senior -> Lead. They then branch into two choices: Manager or Architect. Managers don't write code, but have more advancement opportunities. Architects write less code, but if they do it tends to be the vital, core code. They usually make more than managers, but have a less clear path to the executive tier. And fewer companies need a dedicated Architect than Development Manager.

Occasionally developers "fall out" of the developer path into SCM roles, UI designer, Project Manager, or occasionally high-end QA paths. These though all tend to happen pretty early on, and more due to personality or capability issues rather than concious advancement.

There are a few programming paths that are above Lead that still involve programming. Certain programmers are great Evangelists for their technologies. They spend a lot of time doing great code, but some time getting others to make great code. Some particularly skilled or specialized developers get paid handsomely to continue in that vein. I know of a few network card driver developers who make VP money because they're one of maybe a dozen people in the world who can do their work. These of course are less common, but that sort of path does exist.

8
  • I don't know where you get your facts, but I know a LOT of BA's that were once developers. Programmers are common, finding someone that thoroughly understands your business requirements and users is priceless. I agree Developer -> PM is becoming more uncommon but most PM's I know make considerably more money than developers so tell me again how that is not a promotion for a developer? Managers don't write code Some do. Commented Sep 11, 2012 at 15:20
  • It's all antecdotal, and from what I've seen of your other posts, it seems as though you're on a different planet from me. In my experience, BAs are glorified documentation monkeys who have no clue what business requirements actually mean or impact. In my experience, PMs tend to make a little more than Developers, but almost always less than Seniors. I've worked at 5 places now in different industries over 18 years, and seen this consistent pattern. Indeed.com's salary compare backs this up (though thinks BAs are worth more than I've seen).
    – Telastyn
    Commented Sep 11, 2012 at 15:49
  • @Tealstyn different planets indeed. Where I work BAs get to do interesting things, and by virtue of monopolizing knowledge become valuable. They're expected to navigate DBs and write simple scripts. There's a lot more code monkey devs than doc monkey BAs. Then again, I work in Finance, and domain knowledge can be much more complex than code. I guess this heavily depends on the industry you're in.
    – MrFox
    Commented Sep 11, 2012 at 17:15
  • @suslik You'll excuse me if I don't consider simple DB queries to be interesting. Domain knowledge makes you valuable to the company you're with, but that alone is not enough to drive a career.
    – Telastyn
    Commented Sep 11, 2012 at 17:36
  • 1
    @Tealstyn domain knowledge in Goldman Sachs is very easily transferrable to Merrill Lynch or JP Morgan. There's only so many ways to build trading systems and to deal with SEC compliance.
    – MrFox
    Commented Sep 11, 2012 at 18:00

Not the answer you're looking for? Browse other questions tagged .