Coffee Talk: Java, News, Stories and Opinions

Oct 2 2018   8:15PM GMT

Is there a place for old developers on young development teams?

BobReselman BobReselman Profile: BobReselman


It’s a tale too often told. A young developer shows up bright eyed and bushy tailed to start a new career in software development. There’s code to create, documentation to write, and problems to solve. The world is a never-ending adventure.

Before you know it, twenty years go by. By then, just about all of the developer’s colleagues have moved into management.

Hands-on work is for the young. They can do the all-nighters. Their energy is boundless. The aging contributor who just wants to create has become the oldest person on the team. She wonders if it was a mistake to stick with the code. Maybe it was better to just go into management.

The story’s not unusual. In fact, I wrote about it in a previous article in which I made the argument that software development is no country for old men …. or old women, for that matter.

But there are exceptions to the conventional thinking. There are people out there who’ve made the conscious decision to stay close to the code and not to go into management. They’ve created lives that are satisfying and prosperous. And they continue to create and contribute. Their stories are worth knowing. So, I’ll share. The first person that comes to mind is Charles Petzold.

 Insights from Charles Petzold

If you’ve programmed Windows, chances are you’ve used one Charles Petzold’s books. He’s written various definitive guides for programming Windows. In addition, he’s written other books about software and the history of computer programming. His book, Code, The Hidden Language of Computer Hardware and Software is an engaging read.

Recently, I had the opportunity to I ask Charles why he stayed with code and never went into management. His response was thought-provoking:

Between 1985 and 2014 — when I joined Xamarin as a full time employee — I was a freelancer, and I thought of myself more of a writer than a programmer — except when I needed to do consulting — so the idea of management never occurred to me.

I guess the equivalent of management for a freelancer would be starting my own consulting firm, and hiring employees. Or even starting a software company and trying to market something. But I simply don’t have the entrepreneurial gene.

My brief experience as a manager (when I worked for NY Life between ’75 and ’85) made me uncomfortable. The interpersonal relationship was awkward.

I like working. I don’t like “managing” others. It seems like a strange word to use when referring to other human beings.

Wow! You’ve got to admire the unfettered honesty. It is indeed thought-provoking.

Another person who made the conscious decision to stay close to the code is noted technology writer, Steven J. Vaughan-Nichols.

Steven J. Vaughan-Nichols

Steven J. Vaughan-Nichols, aka sjvn, is an internationally known technology writer and industry analyst. He’s been writing about technology and the business of technology for a long time, since CP/M-80, one of the early operating systems for the personal computer. Sjvn is considered a trusted authority by many because he stays close to tech. He too has steered clear of the management track. He elaborated:

In my case, I went from being an OK programmer to being a decent sysadmin and finally to being a pretty good, if I say so myself, technology journalist. I tried management every step of the way, but the bottom line is, I’m a mediocre manager. I could have faked it — I fear many IT managers do just that — but I knew I wasn’t good at it. I have zero interest in doing lousy work.

Again, another instance of unfettered honesty. The same can be said of dotNetDave.


David McCarter is a noted developer and Microsoft MVP (Most Valuable Professional). Dave has written a number of books and published many videos about computer programming. His YouTube series, dotNetDave Explains, is a hit among .NET developers. Dave has been coding for a long time and has no intention of doing anything else. For him, it’s the challenge of continuous learning. He explained:

In any career I’ve done, I’ve always wanted to progress. If I’m not progressing, I’m not growing. The natural progression of a developer is beginner, intermediate, senior, and then maybe a lead and then maybe into management. Since the early 2000s I’ve known this, but have purposely avoided going into management. I like coding too much. As soon as you go into management, you stop coding. The reason I like coding — and I’ve talked about this in my books and conference sessions — is that it’s like guitar playing. I can never learn every song. There’s always something new I can learn. Programming is the same way. This world changes everyday. Coding is a way for me to learn. And, as I’ve said many times, the day I stop learning is probably the day I die.

Dave is a example of a life lived in the pursuit of continuous learning. He’s influenced many over the years. Younger developers are following his lead. Take 32-year-old developer and architect, Derek Zott, for example,

Derek Zott

Derek Zott is a programmer who has been at it since he was 15 years old. He works at a well-known software company. I met him through my wandering about the Internet. As I talked to Derek, I was taken back to a time when the code was everything, when the principal ambition was to make good stuff. Derek said:

Yes, I plan on staying in development doing hands-on coding. To me, that means at least 1x a week, I’m in code. My guiding principle is that if I’m doing good work — quality of design and its impact to the customer/business/organization — my career path will work out for the best. Moving to management doesn’t give me the perspective, freedom or creativity I need to make an impact.

Derek sees a very viable career path staying close to the code. His response is refreshing. Given his dedication, it’s fair to imagine that he’s going to make some significant contribution to the profession.

Putting It All Together

There’s an old joke in coding circles that goes like this: One of the biggest fears of a true software developer is not getting old, it’s waking up one day and finding out that there’s no more code left to write.

Software development is both an art and a science. It requires a unique type of creativity. The truly gifted developers — from coders to SDETs, system architects and product designers — are rare. They’re also driven. They create because they have to. It can take a lifetime to achieve greatness.

Yet sadly for many, software development is perceived as a career with an expiration date. The conventional wisdom is that you spend your younger years slinging code and then move onto other things, maybe management, maybe even becoming a CEO. I call it the Bill Gates path to glory.

But, there is another path forward that is just as challenging, lucrative and prestigious. It’s the path taken by the likes of Steve Wozniak, Martin Fowler and Grady Booch. You stay close to the code and do the work that needs to be done in the pursuit of excellence. You spend a lifetime in the creative endeavor. But just as importantly, your contributions will serve as stepping stones that allow others to do work that matters. For those who have stayed close to the code, such reward is worth the endeavor.

1  Comment on this Post

There was an error processing your information. Please try again later.
Thanks. We'll let you know when a new response is added.
Send me notifications when other members comment.
  • CyberMike
    Here is a story.  Not looking for help really, but just relating how an old guy in the industry is experiencing it today.

    I joined a software company when I was out of work in 2009.  I applied myself to my position and learned the technology well.  The problem is, I was in 'support'.  I actually did more custom C#.Net than anything else, and I made corrections to the baseline code of the product itself, with the blessing of R&D.  It was a small company, less than 50 people, and I always figured if I applied myself and did excellent work, I'd move into R&D.

    In 2012, our small company was acquired by a much larger company.  The larger company makes a much more succinct distinction between 'Support' and 'Services', and an even greater distinction between those and R&D.  Because of who I reported to (the 'Support' manager), I was deemed a member of the 'Support' team.

    When the acerbic, condescending, arrogant person who was R&D director for our product finally left the company (with some help), I approached the person who had been promoted and asked to joni R&D.  I was told that my department probably wouldn't let me go, and this person did not want to battle that to get me.  Next they hired a 'group manager' for our product's R&D team, and I went to this person the 3rd week they were on the job.  I was told I make way too much for the positions they have open.  I could apply, but I'd need to take a 25% cut in salary or more to be considered.  They are hiring college grads and off-shore (Sri Lanka, mostly) people for R&D.  Even 'senior developer' 'senior analyst' positions are being filled by people far younger and far less expensive than I am.

    Today, I am still in 'Support' because I need my job and my salary.  I'm paid very well, and considered a technical 'expert'.  I'm a pinch hitter and called when they need someone to go in and figure out what's wrong and fix it.  I also do some of the Services work for various custom projects when they get behind, and I am called upon to fix the more complicated issues in baseline code (race conditions, thread contention, runaway processes, etc.)  When I introduce myself to new folks at work, I always say, "I'm virtually in R&D, actually in Services, and officially in Support".  Everyone I work with says I belong in R&D.  I've been doing electronics  programming computers since I was 12 in 1980.  Started with machine code on neighbor's Altair.  I am a desktop developer, and I have never written anything that is designed to run inside a browser - mostly because I've never had a need.

    I've looked for jobs outside of my company, but to meet my pay needs, I'd have to be able to do heavy web development and have experience with some form (framework) of Javascript or be a seasoned mobile developer (Android or iOS).  I can learn whatever I need to, and I am very passionate about doing excellent work.  I'm just tired of fixing other people's mistakes.  I want to create and innovate.  I have no idea what to do.  I feel my career at age 50 is at a complete standstill.  I don't have experience in a team setting.  I'm a soloist, so I know what I need to know and figure things out as I go, but because I am not called upon to do new projects much anymore, I am not practicing even that on a regular basis.  I really want to work with people who are smarter than I am and share similar passions.

    I don't know where this is going to go.  The director (reports to VP) has told me I am very valuable, but I have no idea what a 10 year, or even 3 year career plan looks like for me.  I am the quintessential techno-geek, but I feel my glory days have long since past.
    10 pointsBadges:

Forgot Password

No problem! Submit your e-mail address below. We'll send you an e-mail containing your password.

Your password has been sent to:

Share this item with your network: