This year, I’ve become increasingly acquainted with the DEV platform. It’s a refreshingly positive oasis in the large sea of angry Reddit commenters and “well actually” connoisseurs that is the broader software world.
One interesting facet of this community is that it seems pretty beginner-heavy. I regularly see posts written by and for industry newbies. And by newbies, I mean folks that are aspiring programmers, in bootcamps, looking for entry level work or in roles with the unfortunate “junior” qualifier.
I find this enjoyable. Relative newbies are generally enthusiastic and excited about the industry. And that excitement is infectious.
But it also makes me feel my industry greybeard status.
I think of what I remember Bob Martin saying on a podcast or in a talk or something.
The demand for programmers has grown so dramatically over the last 4-5 decades that the number of programmers is always doubling every five years. As a result, a programmer with 5 years of experienced has more industry tenure than half of the entire industry.
Old Man Status
I’m now pushing 20 years in the industry. I spent about 10 of those in roles where my primary function was to write code. The other 10 have involved managing programmers, coaching them, consulting with organizations about how to manage them, running a codebase assessment practice and these days, well, actually content marketing.
But in all of these roles I’ve written code to varying degrees.
By my calculations of geometric programmer growth, this makes me more grizzled than 94% of the industry.
So we have a bit of a juxtaposition. I’m a programming lifer hanging around with a bunch of programming newbies.
This made me wonder to myself, “if I could summarize this experience into succinct bits of advice, and assuming that anyone actually cared, what would I tell these folks?”
And that’s the premise for this post. The following are the things I consider to be the most important lessons and takeaways from a 20 year programming career.