DaedTech

Stories about Software

By

Programmer IS A Career Path, Thank You

If you’re a programmer, think back for a moment to the first time you hear the career question. You know the one I mean, even if you don’t recognize it as the question: “do you see yourself on the architect track or the management track?”

Caught off guard, you panic momentarily as you feel that you have about 5 seconds to decide whether your long term future involves lots of UML diagrams and flow charts or whether it involves lots of Power Point presentations and demanding TPS reports from underlings. If you’re like most, and you were to answer honestly, you’d probably say, “neither, really, because I kind of like writing code.” But you don’t give that answer (I never did) because you’d effectively be responding to a career development question with, “I have no interest in career development.” But let’s put a pin in that for a moment.

Why is the Programmer Career Path Different?

Imagine a kid going to law school and graduating to go work at a law firm somewhere as an associate, doing whatever it is that associates do. Now imagine a conversation where a partner at the firm pulls this associate aside and says, “so, have you thought about your future? Do you see yourself as more of a partner in the firm, continuing to practice law, or do you see yourself as more of a lawyer-manager?” I imagine the response would be, “what on Earth are you talking about? I’m a lawyer. I want to practice law and be a partner. What else is there?”

Why is it okay (or would it be okay, since this conversation would never actually take place) for an ambitious lawyer to say, “I just want to be a lawyer” and not for an ambitious programmer to say, “I just want to be a programmer?” For the purposes of this post, I’m going to leave that question as rhetorical one. I’m actually going to answer it at length in the book that I’m starting to write, but until the publication date, I’ll leave the why as an exercise for the reader and just posit that it should also be okay for a programmer to say this.

Changing the Culture

I’d like to see a culture change, and I think it starts with our current generation of programmers. We need to make it okay to say, “I just want to be a programmer.”

Right now, the only option is to ‘graduate’ from programming because failure to do so is widely construed as failure to advance in your career. If you become a line manager (or the diet version, project manager), you stop writing code and become the boss. If you become an architect, you kinda-sort-usually-mostly stop writing code and kinda-sort-sometimes-maybe become sorta like a boss. But however you slice it, organizational power and writing code have historically been mutually exclusive.

You can play around with teh codez early in your career, but sooner or later, you have to grow up, take your hands off the keyboard, and become a boss. You have to graduate or risk being the metaphorical ‘drop-out’ with the title “Super Principal Fellow Engineer,” who looks great on paper but is generally ignored or smiled at indulgently.

ProgrammerGraduation

The Effect of Rising Wages

That’s going to change sooner or later. As someone who has looked for work and looked to hire pretty steadily for a number of years, I’ve witnessed an increase in developer salary that is both sharp and sustained.

As the average software developer’s wage starts to creep into 6 figure territory, it’s simply not possible to keep the pecking order intact by paying overhead personnel more and more ungodly sums of money. Just as it makes no sense for a law firm billing out at $500/hour to hire a “lawyer manager” as a 1 mil/year cost center, it eventually won’t make sense to pay a quarter million a year to a pointy-hair, when Scrum and basic market forces both offer the allure of a self-managed team. In both cases, overhead work still happens, but it reports to the talent rather than ordering it around and demanding status reports.

How quickly it changes is up to us, though. We can change this culture, and we can change it pretty quickly, I think. The first thing you can do is fix it in your mind that being an “architect” or “project manager” or “manager” isn’t a graduation and it isn’t a rite of passage. It’s an agreement to do something different than what you’re doing now. Nothing more, nothing less. The second thing you can do is vote with your feet.

Look to Good Examples

I’m not advising that you do anything drastic, but rather that you take stock of your circumstances. Are you at an organization where programming is clearly viewed as how you bide time until you get promoted to a boss’s chair?

If so, consider adding a new criterion to your next job search. Look for organizations that feature prominent industry figures, such as conference speakers, authors, or people with some “tech celebrity.” These are the organizations that are the “early adopters” of the lawyer/partner dynamic of “best at the trade calls the shots.”

If you hook up with these organizations, nobody is going to ask you what “track” you see taking you out of programming. They’ll assume that you’re there because you’re deadly serious about programming as a profession, interested in learning from the best, and interested in subsequently becoming the best.

Sooner or later, we’ll hit some kind of critical mass with this approach. My hope for all of our sake is that it’s sooner. Because the sooner we hit critical mass, the sooner you’ll stop having to explain that doing what you love wasn’t a backup plan for failing to rise in the ranks.

Want to read more about this?  Since writing this post, I finished my book, Developer Hegemony.

85 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Bill Simon
Bill Simon
9 years ago

“We need to make it okay to say, ‘I just want to be a programmer.'” Better: “I want to be a programmer.” No “just”–which seems to diminish the value–is needed.

Erik Dietrich
9 years ago
Reply to  Bill Simon

I think you raise a good point in that it’s a bit counter productive to this sort of populist message to say, “just a programmer” in a dismissive way. For what it’s worth, though, I meant it in the “let’s not overcomplicate things” way. For instance, if you went to Subway and asked for a sub, and the clerk started trying to sell you cookies and sodas and stuff, you might say, “enough — I just want a sub.” You’re not diminishing the value of the sub in that context. I think, more broadly speaking, that we can shift the… Read more »

Anthony Ruffino
9 years ago
Reply to  Erik Dietrich

Free as in beer -> Just as in sub- sandwich
I got you the first time Erik.

michaelminutillo
michaelminutillo
9 years ago
Reply to  Erik Dietrich

I agree. There is a big difference between “I just want to be a programmer” vs. “I want to be just a programmer”

Dylan Bourque
Dylan Bourque
9 years ago

Nice points here. I’ve been threatening my “boss” (who’s a friend and a good developer himself) for years that I would walk if they ever try to make me become a “manager”. 🙂

I’m in this profession because I want to be writing code!!

Erik Dietrich
9 years ago
Reply to  Dylan Bourque

Personally, I’ve kind of wandered around with my hands leaving the keyboard, coming back, leaving, etc. I find that whenever I get away from programming 2 things happen: (1) I do it way more on nights and weekends to stay sharp and (2) I worry that I’m starting to lose my edge.

I got into this line of work because I like building things. It can be fun to put others in a position to succeed at building things, but you really start to miss the feeling of doing it yourself.

John Pazniokas
John Pazniokas
9 years ago

Looking forward to the book

Erik Dietrich
9 years ago
Reply to  John Pazniokas

Glad to hear it! It’ll probably take me some time because I’ve got a lot of projects going, but it’s definitely on my radar.

Mike Lythgoe
Mike Lythgoe
9 years ago

Great article, there should definitely be no perception of a lack of ambition if somebody wants to stay a developer.

Erik Dietrich
9 years ago
Reply to  Mike Lythgoe

Exactly. I really want to see the industry move away from the standard corporate narrative of “line worker graduates to line manager graduates to mid-manager, etc.” I think it’s a poor model for knowledge workers with a high-demand skill. That’s why I bring up the lawyers — not that this is an ideal comparison by any stretch, but it’s food for thought.

Super Mario
Super Mario
9 years ago

I think you are completely missing the point. No one is pulling programmers aside and asking them if they want to be managers or architects. The fact is that programmers have a very short half life, and after a few decades of experience get way too expensive and unemployable. So continuing to be “just a programmer” is not really a viable option, when no one wants to hire you or pay you what you are worth. So you are kind of forced to ask yourself this question and think of your future employment potential.

disqus_hQ7jQy0YKu
disqus_hQ7jQy0YKu
9 years ago
Reply to  Super Mario

I think that is exactly what this blog is about. Highly experienced programmers should be sought after. I believe that is happening much more now than ever before.

Sridhar Ratnakumar
9 years ago
Reply to  Super Mario

You have a point, but please get rid of the word “fact”. For god’s sake, popularly observed track of life is not a fact. It doesn’t apply to everyone, especially those programmers who continue to be as interested and as inclined in keeping abreast of the changing technical landscape.

Erik Dietrich
9 years ago
Reply to  Super Mario

I suppose it’s a YMMV situation with being asked this question. As a programmer, I was asked this question multiple times at more than one organization during performance reviews. The idea was that they wanted to identify my long range career goals and help me start working toward them. I think the intent was quite laudable, but the presumption that these involved being something ‘more’ than programmer was awkward and somewhat discouraging. As for the idea that being a programmer is sustainable only for a limited duration, I’ll push back on that a bit. In the first place, this is… Read more »

Thomas Eyde
Thomas Eyde
8 years ago
Reply to  Erik Dietrich

For a long time now, I have considered my bosses as colleagues who do their part of the job and are, hopefully, paid according to contributed value and market pressure. They have a different skill set, but are in no way more skilled. The moment I learn they are paid more, simply because of tradition, is the moment I want to leave.

Erik Dietrich
8 years ago
Reply to  Thomas Eyde

I think this is a great perspective, myself. If a good people manager ups everyone’s game and has a salary that can be justified, then, by all means, pay that person a lot of money. If the job pays a lot simply because pay matrix, then the overhead money is a complete waste.

Anthony Ruffino
9 years ago
Reply to  Super Mario

I think you missed the point. Veteran programmers should not be worth more money only when they are willing to manage instead of code. Coding is where the value lies and as Erik pointed out, this is more an more true without the need for pointy-haired, highly paid manger types, as dev teams become more and more self organized.

Jgritty
Jgritty
9 years ago
Reply to  Super Mario

You’re wrong on both counts, and as people in the industry, we need to continue making you more wrong. No offense. I can’t count the number of times I was “pulled aside” and asked if I wanted to be a manager or an architect. Every time, I just shrugged it off, making sure I was getting market rates of increase in salary, and continued to the best job I could. Yes, I’m expensive, but I’m also in very high demand. I could leave my job today, and have a new one at the same pay inside of a week. It… Read more »

disqus_hQ7jQy0YKu
disqus_hQ7jQy0YKu
9 years ago

I can hardly remember if anybody actually asked me the question. I started programming at 12 years old (over 35 years ago). There was never anything else I wanted to do. If anybody asked me about becoming a manager I would have said something like “Oh my GOD no!”. I don’t think I’ve been hurt too bad by my career choice. At my current job (ERP software with 4,000+ employees), I don’t feel any push to become “more than” a programmer. I do see that we have two different kinds of programmers: “real” programmers and “factory workers”. The factory worker… Read more »

Kaoru
Kaoru
9 years ago

Interesting division of “real” vs “factory” i wonder if there are more divisions within the definition of programmer.

disqus_hQ7jQy0YKu
disqus_hQ7jQy0YKu
9 years ago
Reply to  Kaoru

That was just how I’ve been thinking of it. Factory workers come in every day, put in the 8 hours and go home. They know how to run the machines but don’t really know or care beyond that. This is a gross oversimplification of course. These are the kind of developers that will never read this blog.

Erik Dietrich
9 years ago

I’ve heard this sort of programmer referred to as a “dark matter developer.” It’s an interesting topic in and of itself.

wpostma
wpostma
9 years ago

Microsoft has a term called Distinguished Engineer. It means a programmer who gets paid more than an architect, and probably as much as a VP.

Erik Dietrich
9 years ago
Reply to  wpostma

I wasn’t aware of that. I dig it! I think that’s a great example to set for the industry.

Jakub Jedryszek
9 years ago
Reply to  Erik Dietrich

Microsoft also has Technical Fellow title (e.g. Anders Hejlsberg)

Artur Czajka
Artur Czajka
9 years ago

TomTom also has a full ladder for engineers. 5 seniority levels, from Junior to Principal. Plus a Fellow, which is a VP-level title, given for recognition.

Aarav Khanna
Aarav Khanna
9 years ago
Reply to  wpostma

Why Developers and learners prefer Asp.net

http://www.blog.weekendtrainer.in/net-technologies-and-its-origin-6

David Warman
David Warman
9 years ago

Speaking from the other end of the journey, Programmer as Profession is actually do-able. I’m 67, programming with design responsibilities, and comfortably remunerated. I’ve been doing this since 1967, and in the interim, for a good couple of decades, my employers just kept inventing new titles for me so they could keep giving me raises without offending the bean counters. My latest was a recruitment just a few years ago so I’m still desireable. Contrary to the “programmers get stale early” meme, there is in fact no end to learning and inventing new things, and no end to new problems… Read more »

Jerry Kindall
Jerry Kindall
9 years ago
Reply to  David Warman

There’s real value in experience. Programmers with it know that, for example, Web programming is just CICS with different details. Programmers without it spend half their time reinventing the wheel.

Erik Dietrich
9 years ago
Reply to  David Warman

Thanks for chiming in. Some of the people from whom I’ve learned the most in my career as a programmer have been doing it for a really long time at a really high level (Uncle Bob Martin comes immediately to mind). I consider “you can only program for so long” to be a canard and one that gets way too much air-play for my taste.

Aarav Khanna
Aarav Khanna
9 years ago
Reply to  David Warman

Why Developers and learners prefer Asp.net?

http://www.blog.weekendtrainer.in/net-technologies-and-its-origin-6

Eric
Eric
9 years ago
Reply to  David Warman

@David, really inspiring. I’d convinced myself that I can be a programmer for as long as I want. Recently I’ve started to notice people like Kent Beck, Michael Feathers, Martin Fowler (and others) who’ve been doing it for a while and are still at it in varying degrees. I was starting to wonder if its only an option available to the hotshots. But hey, what do I know, you’re probably one of the hotshots that I’ve not come across 🙂

KevinS
KevinS
9 years ago

Oh, so my friends in college aren’t as high and mighty as they think they are, because I’ve told them I would rather drop out now rather than end up in a managerial position like they *dream* of doing. Me being a CS major and all of them in the business school

Erik Dietrich
9 years ago
Reply to  KevinS

I’ve always had a philosophical skepticism about the idea of an undergraduate getting a degree in “business.” I might well be in the wrong, but it always struck me as a fundamentally strange thing.

Brian Blain
Brian Blain
9 years ago

I remember thinking this way during the first 5 or so years of my career. The thing is, as you get more experiences you’ll be inclined to start teaching others, and new cheaper employees come in. You start building responsibilities for what others are writing. More time passes and suddenly you are the go to person for a lot of things. So who else is going to manage this team/department/project? The guy above you is too busy and the ones below you don’t know enough. You are doing your career an injustice not to tackle every new task with just… Read more »

Erik Dietrich
9 years ago
Reply to  Brian Blain

Not in the, “as much” is a far cry from totally opting to leave it as a rite of passage. I certainly won’t dispute that you build up responsibilities other than writing code, but I think there’s definitely a place for that kind of thought leadership while still calling oneself “programmer.”

Aarav Khanna
Aarav Khanna
9 years ago
Reply to  Brian Blain

Why Developers and learners prefer Asp.net??

http://www.blog.weekendtrainer.in/net-technologies-and-its-origin-6

Josh Harwood
Josh Harwood
9 years ago

You could do with more contrast between your article text and the background. If you made the text lighter or the background darker it would make it easier to read. As it stands I had major issues trying to read this and gave up after the first paragraph

Erik Dietrich
9 years ago
Reply to  Josh Harwood

Fair enough, and I appreciate the feedback and will take it into consideration the next time I tweak the UX/theme for the site. I’d be lying if I said that was a particularly high card in my personal backlog, though. Just not enough hours in any week. =/

Jordan Whiteley
Jordan Whiteley
9 years ago

I’ve always wondered how you become an architect or a project manager that doesn’t get your hands dirty. It seems like to be any good at it you’d have to be right in there pairing with your team. I’m hoping (in my ideal future) that PM and Architect start to become things that developers are good at, much like you know you’ve got that one functional programming weenie that’s great with custom ETL scripts, and the guy with a real eye for css animations.

Erik Dietrich
9 years ago

I think that’s the way things are going to wind up going, personally. When I’ve played the architect role and even when I’ve had people reporting to me, what I often did was prototype examples for the team to use if they found them helpful or pair with people when they were stumped. I also see a sort of consultative role potentially emerging as well. I’ve always been a fan of “good architects make themselves gradually unnecessary.” It’s been my experience that teams with good aptitude can use some “architecty” guidance at first, but then really become capable of driving… Read more »

Aarav Khanna
Aarav Khanna
9 years ago

Why Developers and learners prefer Asp.net?
http://www.blog.weekendtrainer.in/net-technologies-and-its-origin-6

Jarrett
Jarrett
9 years ago

“best at the trade calls the shots.” i.e. Meritocracy (I just recently became acquinted with this term during an interview at a pretty cool tech startup)!

Erik Dietrich
9 years ago
Reply to  Jarrett

Pretty much, yes. Though I tend to shy away from that term in the tech industry a bit because I think it’s rather loaded.

MasterOfMisc
MasterOfMisc
9 years ago

“I just want to be a programmer.”…. There! – I said it..

Seriously though, here’s how I see it.

Every place I have worked, the powers that be reward you by giving you a position of management (whether you want it or not). They see it as the next evolutionary step in your career.

It seems there is no option to progress without picking up some management responsibilities along the way which is a shame.

Erik Dietrich
9 years ago
Reply to  MasterOfMisc

You’ve hit on the exact dynamic that I find so troubling. The kind of “what do you mean you don’t want a promotion to manager? That’s crazy talk!” Not only is it the case at most organizations that ‘graduating’ from programming is expected of high performers, it’s so ingrained that people think you’re nuts if you opt out. I’d really like to see that change.

An0nym0usC0ward
An0nym0usC0ward
9 years ago
Reply to  MasterOfMisc

I thought that’s support’s responsibility. “Sure, file a ticket and I’ll see what I can do.” And then pass the ticket to support.

MasterOfMisc
MasterOfMisc
9 years ago

That was just a trite example and it was said tongue-in-cheek. 🙂 I wouldnt want you to come away thinking thats my one and only “gripe” with management and while that may be a small drain on your time its one of many “time drains” that you dont see when your are in a core development role. The take-away I wanted to convey from my original post was there should be a career progression for developers that reward them for thier hardwork without shoe-horning them into a management role. I can only speak from experience but at my company there… Read more »

IRLeif
IRLeif
9 years ago

Nice post, thanks for sharing. Where can I subscribe to be notified once your book is ready? I would love to check it out.

Erik Dietrich
9 years ago
Reply to  IRLeif

Thanks, glad you liked! Any time I come out with books or courses, I post announcements on the blog, and send a note out to my mailing list. You can sign up for either one of those if you scroll up to the top of this page and look on the right. You could also follow me on twitter (@daedtech), where I also announce such things.

DeathByTape
9 years ago

I think you make very good points here, but the design work that is typically tasked to “architects” is usually very interesting (depending on where you work). Of course, there is a political nature to this job when you work in a large company and are tasked with coordinating multiple teams into the same tech stacks, etc. However, if such a position existed where you could do much of the heavy-lifting in product architecture design as well as implementation that would be ideal for some. I suppose this may, more or less, be the world of a startup though rather… Read more »

Erik Dietrich
9 years ago
Reply to  DeathByTape

“Architect” does seem to be a pretty loaded term in the industry. In some places, it just seems to be a token promotional title for programmers and in others it means that you don’t do anything remotely resembling programming. I’ve seen “architect” roles that are an awesome combination of tech and leadership and I’ve seen some I wouldn’t wish on my worst enemy. A theme that I’m generally interested in exploring is how development teams can collaboratively fill these kinds of historically “external” roles. Can they take care of architecture for themselves and even handle most tasks that would require… Read more »

An0nym0usC0ward
An0nym0usC0ward
9 years ago
Reply to  DeathByTape

If you want to stay sharp at design, better keep on coding. Otherwise you quickly start designing abstractions that do not work, and become a PITA for the actual programmers. Even if you enjoy doing it and management looks up to you.

Amit
Amit
9 years ago

Nice post! I cannot agree with you more on this. Your blog posts on career have been informative.

I had a question – What career steps do you envision for a programmer? I would want to be a programmer over a longer run. Should one try switching technology roles like moving from being a server side developer to a front-end developer or stick to one and be an expert on that?

Erik Dietrich
9 years ago
Reply to  Amit

Hmmm… if your goal is to have nice increases in pay over the course of your career, while staying fully technical, I can see a couple of courses of action. First, you could consider specializing in an area or discipline, giving you a level of depth/expertise that would allow you to command a nice wage. The danger there is that you could specialize in something that becomes less valuable in the market. Another course of action would be to lay the foundation to go off on your own, which is a much better economic deal than working for a wage,… Read more »

Amit
Amit
9 years ago
Reply to  Erik Dietrich

Those were some valuable suggestions.

I am interested continue specializing server side technologies since that’s what I worked on over 9 years now. I would need to expand my skill set and keep up with the new things coming up on the way, do you see being a server side technologist would be less valuable over a period of time (say 10 yrs) ?

I like the other suggestion of laying your own foundation. I would appreciate if you could throw some light on what is involved in it and how should one plan for it?

Thanks for your time.

Casey Brumbaugh
Casey Brumbaugh
9 years ago

I think you have a lot of good points I am often conflicted with this choice as I am up on the precipice of this in my own career. Where I work at it is very similar and that you must choose an architect role or a manager role to continue to be successful and grow your salary. Before that you are tech leading projects which in my experience takes your hands off of the keyboard.I myself don’t mind taking on more managerial in leadership positions but I wish there was a balance that could be struck between the things… Read more »

Erik Dietrich
9 years ago

I think that’s a pretty common set of steps in the corporate world. There’s a natural pressure on a developer to help bring new people up to speed and exhibit leadership even before titles and official roles change. It’d be nice if we, as an industry, could develop some nice, established patterns for maintaining a healthy balance between leadership and doing. Right now, it’s really up to us as we move along in our careers to keep in touch with the technical work, particularly at places where performance is rewarded with leadership roles. In other words, it’d be nice not… Read more »

Rich
Rich
9 years ago

Superb… I have been saying for years when people ask: “I’m a programmer”… I just quit as divisional CTO of a top 3 global defense contractor to return to programming. People think I am crazy. I had always had a chance to keep my finger dipped in code until that last jump to executive… took me 9 months to realize it was a zero sum game. The money wasn’t worth the bs. Programming is an art, the best of skills and creative spark passed tribally from person to person. I love it, and will remain here… as ‘just a programmer’… Read more »

Amit
Amit
9 years ago
Reply to  Rich

Quite inspirational. Whats your plan when you return to programming? What role do you play during development? What & how do you pick up projects?

I am interested in getting some tips and would appreciate your thoughts.

Erik Dietrich
9 years ago
Reply to  Rich

I think this is an important message for people to hear as well — the idea that you can try out roles and see what works best for you. I too have been pulled out of programming roles and wind up coming back to them. The more this message gets socialized, the more people will look at “manager” and “programmer” as simply two different roles with neither one better.

Thomas Lassanske
Thomas Lassanske
7 years ago
Reply to  Rich

I’ve done the same – a couple of times, actually! I recognize I have a talent for design and planning, but want to always have my hand in the code as much as I can (which is valuable in accomplishing those other things well, IMHO). As such, I think leading small teams is perhaps my best fit, as I can perform all activities. In the past, I’ve had to make course corrections with my feet, but I’m now comfortable setting expectations up front and saying “no” to offers of “advancement” that take me out of my desired activities. I used… Read more »

Andrei Dragotoniu
9 years ago

I think that a shift has become already and will become clearer in the next few years. What I see is a total disconnect between businesses and programmers. They have no idea what we do and have no idea how to determine our value other than our job title and how much we were paid before joining them This of course affects any kind of career path because let’s face it, how many of us spend years working in the same place ? The shift comes in the form of attitude change. As developers we realize how much money our… Read more »

Erik Dietrich
9 years ago

I think you’ve nailed it, and this is a subject about which I’m going to continue to write. It’s why I use the analogy of law firms when I talk. I could easily see a future where application developers stop working as W2 employees for traditional companies and instead tend to form “application development firms.” We currently call these “consultancies,” but that’s not really accurate. Mostly they just bang out software, trading dollars for hours, ala a law firm providing a service. I think that there will always be some “in-house software talent” but that developers will increasingly work for… Read more »

Andrei Dragotoniu
9 years ago
Reply to  Erik Dietrich

Please continue to do so. I will do the same, more voices more power 🙂

Craig Wagner
Craig Wagner
9 years ago

This article seems to be coming from a pretty narrow perspective. I’ve been a developer/engineer/programmer (although I hate that latter word) for almost 30 years now. In none of my jobs have I been pushed to be anything else. I’ve been asked if I’d like a management role when one comes up, but when I refuse I’m not relegated to the garbage pile. As far as making more money, I know people who have gone into management and actually taken a pay cut. Regardless, developers fall into a certain pay scale range and if you want to be a developer… Read more »

Erik Dietrich
9 years ago
Reply to  Craig Wagner

I can’t speak to a “narrow perspective” other than to say that I guess it doesn’t sound like what I’ve written is applicable to your specific situation. I’ve written about my own experiences, working for and consulting for software shops. Given the breadth of the audience the post seems to have resonated with, I’d go out on a limb and say that a lot more people than just me have had similar experiences, but I can’t say whether that makes it a majority or even a sizable minority. Regarding the second paragraph, comparing developers in general to working at Subway… Read more »

Craig Wagner
Craig Wagner
9 years ago
Reply to  Erik Dietrich

My specific situation is a 30-year career over 12 employers in two countries, so it seems like a decent enough cross-section. Fine, you don’t like the Subway analogy. The point behind it still holds which is that your choice of career is going to put you in a certain salary bracket. As for billing out at $200 / hour, maybe that’s true in Chicago but it sure ain’t true in Portland. I have friends who are doing the independent contractor thing and after they factor in health-care costs, paying for their own training/education, not being paid when they take a… Read more »

Erik Dietrich
9 years ago
Reply to  Craig Wagner

It wasn’t my intent to suggest that you didn’t have personal breadth of experience. I was more saying that I can’t really speak to whether my perspective is narrow or not. It doesn’t feel like it is to me (based on my own work experience, that of peers, and that of the various people that contact me through my blog, relating their own stories), but, I can’t speak definitively to that. I also wouldn’t dispute the idea that how you choose to make your living has an effect on the compensation that you might expect. What I do want to… Read more »

Erik Dietrich
9 years ago
Reply to  Craig Wagner

Oh, also, I was talking about the post resonating with people as measured by traffic to my site and comments on this page. I saw that it seemed to have a high score on reddit, but I generally don’t read comments on sites like that when they link to me, since I’ve found it’s usually only about 10 or 12 in before someone starts posting about how they hate you or wish you were dead or something =/

(Based on a few incidents past experience)

Phillip Andreason
Phillip Andreason
9 years ago

I’m glad someone else has said it. Every time I turn down an interview for a “manager-type” role everyone involved seems baffled. The explanation is always the same, “I went to school to learn how to code and develop software. If I had wanted to become a software ‘manager-type’, I would have gone to business school and specialized in project management.” Even with this explanation, everyone is still befuddled.

Erik Dietrich
9 years ago

Glad if it resonated with you, and what you’re describing is eerily similar to conversations I’ve had at points in my career.

Phillip H. Blanton
9 years ago

I have always said I don’t want to be a manager, because I like 1337 (0d3z. Now that I have recently turned fifty, I have begun to rethink it. I think the logical career path for a developer is up through the developer ranks, Jr. Mid, Sr.; then up through a few architect ranks like Sr, Principal, and Chief. If you are absolutely management averse, then you should still have a full ladder of upward mobility, but be aware, as you get more and more experience, you will be expected to use your knowledge to assist the team in securing… Read more »

Erik Dietrich
9 years ago

Is this tough-lovish advice for me, or are you talking as if to the younger self you mention in the first sentence? I haven’t personally “refused to grow into” anything. In fact, quite the opposite. I took every one of the steps you mention (dev, senior, team lead, architect, up to CIO), and then went into business for myself as a freelance software consultant. These days, I do coaching and management consulting (and I don’t even have to wear a suit). I’m writing this post because that was the picture of what success looked like that was painted for me… Read more »

Dave
Dave
9 years ago

Here is the problem, saying I just want to be a programmer really shows no growth.That is the only thing I think the people asking the question want is to see how you think you will evolve. Now take the same thought and when the question comes up, say “I want to be a consistently better programmer” To be honest it is something programmers should be striving for. There is always something to learn and technologies shift constantly. Me, I want to learn to be a better programmer all the time. When they say “Aren’t you already a programmer?” Just… Read more »

Erik Dietrich
9 years ago
Reply to  Dave

I like the sentiment, but simply looking for evolution wasn’t ever the context of these discussions — at least the ones that I had. These were discussions of specific roles other than programming. I think that having a plan for improvement would mitigate the pressure to be something other than a programmer in our current culture, but I don’t think it would come close to eliminating it.

Rob Conaway
Rob Conaway
9 years ago

Programmers advance their careers by becoming better programmers. In the past this usually meant seniority since that was the only thing easy to measure. Today, various measures of craftsmanship are relevant.

Erik Dietrich
9 years ago
Reply to  Rob Conaway

Seniority as the determining factor makes me shudder. I’ve seen way too many cases of that turning into this: http://brucefwebster.com/2008/04/11/the-wetware-crisis-the-dead-sea-effect/

Hugues Bernard
Hugues Bernard
9 years ago

What you describe is so true (at least for me) that this is one of the reasons why I made a “burn out” 5 months ago. I spent the last 2 years at answering the “career path” question by following the two wrong directions: being a manager first, then an architect. These were mainly the two options I could choose according to managers that wanted to help me evolving my career (thank you). I slowly but surely drifted away from what was of value to me: being a (good) programmer, creating, inventing, realizing… Until I was feeling so bad that… Read more »

Erik Dietrich
9 years ago
Reply to  Hugues Bernard

For what it’s worth, I couldn’t tell that you were a non-native speaker until you said so. 🙂

And your situation is exactly the kind of situation I hope we can stop. Hopefully you find a way to do what you like, enjoy it, and get paid!

Brice Wilson
Brice Wilson
8 years ago

Very nice post Erik. It has stuck with me the last few weeks and I’ve been kicking around my own ideas on this topic. I definitely think “programming” is a career path. However, I think there are still ways companies can develop a path for programmers that is non-management and completely separate from an “architecture” track. I think the first step is for companies to recognize the value provided by their best programmers and find new ways to extract that value while also letting the programmers program. I gathered my own ideas into a post. I’m sure they will continue… Read more »

Erik Dietrich
8 years ago
Reply to  Brice Wilson

I REALLY like the additional roles that you propose. In stodgy old org-chart situations, the first two might be hard to turn into actual job titles, given that they’re intrinsically transient and would suffer from pretty large diminishing returns after a while (or else whoever is doing them is doing them badly). Certainly one can make a go of these as a consultant.

Pioneer seems like a nice reboot of the R&D concept and probably one that almost any shop could use. Interesting stuff!

Harshith S Kumar
6 years ago

I would love to upvote or like this post as many times as I can. I am at that stage of my career with 5+ years of coding experience and was thinking about my future career prospects and landed on your blog because I just like to write code and I am proud of it.