I respond really negatively to the notion of 'dead end.' Programming isn't a dead end job any more than welding is a dead end job or painting. But it is a trade . What is more, managing is a different job than programming. Not a lot of programmers really internalize that until they try out being a manager. Architecture, and technical leadership in general, is still another job. It takes the ability to internalize mas…
From an economic standpoint, being able to generate 1000 lines of syntax error
free code per day, is perhaps the best possible programmer you could be, but
its never worth more than 10 programmers generating 100 lines of syntax error
free code a day.[1] So yes, there is an economic limit on your pay.
If all you ever do is code functionality that other people dream up, in a system design that someone else specifies, then I agree completely. For a lot of engineers, that's how they operate. Maybe that's how they want to operate, maybe that's the best way for them to operate.For other coders, and this depends as much on the company and corporate structure as it does on the individual, they are the ones dreaming up new products, new approaches to old problems, layout solid foundation that 100s or 1000s of engineers can build upon, or specifying an approach and methodology which ships the product 6 months sooner with twice the functionality or half the bugs. They are the engineers that make your entire organization not only more efficient, but literally capable of things that they weren't capable of before. That's when you start getting into the same type of ROI from that programmer as that SVP is supposed to be providing.
The problem is most organizations simply aren't organized to promote and reward these engineers, and that's the "dead end". The last time I worked for a company I didn't own, literally the only way I could find to make any real money was to do my programming inside the sales organization, so I could be paid on commission for writing code for "major accounts" which would only later be taken up by the core engineering team and become a full-fledged product line.
Being a quota carrying engineer, with variable compensation and benefits like 'Presidents Club' was living in a different world from the engineering org. What I found was that, when working for someone else, in order to justify significantly higher pay, I had to be more directly driving increasing sales. Doing the exact same work inside of the engineering org, even with the same sales impact, would have paid significantly less.