I am at the end of the tail of Generation X; I was in the fourth grade when the Simpsons hit our TV; when I started high school we had Nirvana and no world wide web, and when I finished it was the reverse. So now I'm in my early thirties (I'm even in my 0x20s) and I've been programming in various guises since before the turn of the millennium. For the past decade and a half I've been called a "Head Programmer" and a "Lead Developer" and a "Senior Software Engineer" and even a "Senior Web Developer." I'm at the top of my profession.
The problem is: I'm in my early thirties, and I'm at the top of my professions. And I'm not exceptional; the top here isn't very high. My current employer is quite happy to pay for me to attend training courses and gain further qualifications and progress my career, but the only courses available are things that lead towards management. I'm currently eyeing off a Cert IV in Project Management, which is relevant for a senior developer who does project work (i.e. me,) but that's – after my rudimentary ITIL qualifications – kind of it. My next professional step is up through team leader/supervisor, to section manager, and on through the pointy-haired ranks. I don't really want to be pointy-haired. I want to be a coder!
This reminds me of an anectode about my supervisor while doing my honours thesis (yep, I even did that – Bachelor of Science (Computer Science) with Honours.) I can only remember a couple of things my supervisor told me the whole year I was "working under" him: once he told me I was going to be a bad father; and another time, when he saw that my work was focused on implementation and didn't contain enough theory for him, he said that I would "only be a programmer" (the emphasis is mine – he said it dismissively.) You know what? I like being a programmer; there's no "only" about it. I saw his code, it was, to put it bluntly, shit. What is a highfalutin academic computer science research without programmers? Where do all your fancy algorisms go? Who implements your esoteric ideas so they actually have some real world value? Computer scientists work for programmers, not the other way around!
Sorry, I'm digressing, but the sentiment remains. Why are programmers less? Why does programming have to stop here? Why do I need to touch less code as I move further up the ranks? Actually, that's a misphrasing, because it's not the code I like, per se; I'm equally happy to design structures and implement patterns and solve problems on a white board or in a discussion or in my scribble book or on a keyboard, which is why team leadership isn't so bad in and of itself, except that it feels like the first step on that long journey away from getting things done, towards middle management.
The options before me seem to be:
Are there any other options? If you're a programmer type, where are you
and where do you see yourself going? If you're not, but your profession
has a similar hard ceiling, let me know, I'd like to hear about it. Even
if you just have some random advice or commentary, drop a line and let us
hear read it. Add to the Disqus discussion below, or comment
or even @tweet me. Whatever.