A Long View of the 'Short' Technology Career

Possible IT Specialties

Many of those chicken-and-egg experience jobs go to former programmers. It's not just line management and consulting, but also technical writing, teaching, business analysis, and sales. Don't envy the new graduate for his one opportunity. Feel sad for him. It is unlikely that he can get started in security or IT auditing work, performance testing, or recruiting without the kind of experience and contact network that take years to build.

So, yes, the programming career ladder may end in ten years, but that does not mean you have to fall off. The top of one ladder can lead to the bottom of the next. The important thing is to pick a direction (or perhaps a few) early enough to have some real alternatives.

But I Want to Stay Technical!

If half of programmers will be gone in fifteen years, then the other half will still be around. Half of those who are still around in fifteen years will still be around in thirty years. So, if you want to be part of that half, that’s fine. There is nothing wrong with that. I even have three practical suggestions.

The simplest thing to do if you'd like to stay technical is to pick a domain where technology does not change much. Within fifty miles of my house, there are four major shops that retain programmers writing with COBOL, CICS, and MVS. Long tenure is common and the work is routine, but it is relatively stable. However, trying to pick which technology won't change much is tricky. Today, embedded C/C++ and Java seem to be the most enduring options.

If you want to stay in programming but like change, you could invest heavily in professional development. Bob Martin, the author of Clean Code, suggests that programmers invest twenty hours per week learning new technologies. You might not spend twenty hours, but, between discretionary time at work and a small investment at home, staying current is not as daunting as it often appears.

About the author

Matthew Heusser's picture
Matthew Heusser

Matthew Heusser is a consulting software tester and software process naturalist, who has spent his entire adult life developing, testing, and managing software projects. He has served as the lead organizer of the Great Lakes Software Excellence Conference, organized a workshop on technical debt, and taught information systems at Calvin College. Matthew blogs at Creative Chaos, is a contributing editor to Software Test & Quality Assurance magazine, and is on the board of directors of the Association for Software Testing. Matthew recently served as lead editor for How to Reduce the Cost of Software Testing (Taylor and Francis, 2011). Follow Matthew on Twitter at @mheusser or email him at matt@xndev.com.