If I were to summarise the last ten years of my career prior, specifically from about June 2000 to June 2010, it would look something like this: web developer, specialised web developer, senior web developer, junior manager, manager, director, technical architect. What, in many ways, looks largely like an “upward” progression in knowledge work.

During these last ten years, and notably the latter five, I trended more and more away from programming and more into management. I managed people, I managed projects, I managed implementations, and pretty much managed to avoid coding of any kind. I convinced myself that it made more sense for me to focus on the higher-level technology planning than it did on the actual implementation — there were others who did it better than me, and it was a waste of effort to try do it all.

And suddenly, I found myself checkmated.

In June, it became painfully clear that my role as a technical architect was going to run out, and soon. (I ended up taking all of August off — partly because I’d planned to do so many, many months ago, but also because work for my role had run out.) And despite looking around, there just didn’t seem to be a demand for mid-level technology managers with an emphasis on internet applications. I’d managed to — quite literally — position myself out of a career.

My father ran into something like this himself, after his company rather callously raped him of his respect after a great many years of service and profit. He, had risen from a junior employee to a manager after many years (even running an entire division of the company), and his fall was painful. He was 50 at the time, and starting out new again ain’t easy. After the shock wore off, however, my father strived to reinvent himself, doing what he did best: sell. He went from construction equipment to selling oil-absorbing peat moss (in effect, going green long before it was common knowledge, let alone trendy).

I now face a similar need to reinvent. I’m only 38, so it should be easier, right? (Right?) But I have a problem. Unlike my dad, I’m not a specialist anymore. I was, about ten years ago, but I’ve since become a generalist — in both the best and worst cases. I know a lot about my industry, but in most cases I don’t know quite enough to be truly useful in specific situations. And add to that, my specialist skills have rusted. They’re out-of-date, and some of my knowledge includes developing for now-unsupported platforms.

The newer libraries are unknown to me, and I’ve never been particularly good with object-oriented programming (the OOP style was not harped on when I was in school, so I’m a functional programmer). But today’s environments require me to know how to use these tools. The guys I work with can make them sing and dance, and I feel as if I’m lucky to get them to just stand up.

I still plan to use my management years for their wealth of experience — there’s a lot to be said for the things you learn while trying to make sure everyone else has an easier time fo their job. Those skills, however, don’t offer me a current job as a manager. Going back to my older skills is proving quite a challenge. I gotta tell you, it’s been like watching someone restore a rusted engine, and try to get it to turn over for the first time.

I also can’t help but see the irony that the very same interview questionnaire that I helped write over a decade would now exclude me from being hired. I almost feel like that guy you’ve hear about, laid off from a job he had for 30 years, whose industry has waned, having to do something totally different now.

Make no mistake, I am retraining — relearning something I knew how to do (and do well), to keep my skills strong enough to keep me employed. Unlike formal programs, I have to do this on my own, without a teacher. I have only the contacts I’ve made over a decade as assistance, and more RSS feeds and Twitter accounts than I care to think about. Ultimately, I have to rely on my aged brain to do things it used to find trivial, and now finds difficult.

It’s stressful. I feel like I’m having to learn to walk again. I’ve had to do the simple projects, to re-master the basics. (You gotta walk before you can run.) I’ve spent many late nights reading all forms of documentation and standards, and in particular, I’ve been reading Drupal documentation voraciously (helped in part by my much-stronger colleague Brian) — the concept of a CMS I understand; it’s the implementation I need to know. It’s also learning deeper PHP (and PHP frameworks), jQuery, more complex SQL, and learning the newer tricks found in HTML 5, and CSS 3. If I had the time, I might even try my hand at ActionScript. But I already feel overwhelmed. There’s just not enough time in a day.

It’s a different mindset, too, and refocusing it onto code has been a challenge. I find myself planning out implementation strategies, and not focusing on the current need. I try to do a simple implementation, and I’m soon debating whether I should build an XML parser, or go straight to a simple CMS build to side-step some of the issues. I’ve had to rely on friends to help fix implementations, only to see the fix and slap myself in the forehead for not thinking of it myself.

It’s coming, though. Every day makes greater strides, and working under others with deeper experience is helping rebuild the skills I had feared lost. It will take time. But I’m strong. And I will survive.