DEV Community

loading...
Cover image for Why Older People Struggle In Programming Jobs

Why Older People Struggle In Programming Jobs

bytebodger profile image Adam Nathaniel Davis Updated on ・14 min read

I'm old. I'm OK with it. I don't lay awake at night worrying about it. But I do understand quite well that I'm definitely old - at least, in a "programming" sense.

Most outside this career field would laugh at the idea that I'm old. In most careers, being in your mid-40s is the prime of your professional powers. But in software development, anyone north of 40 is often viewed with some suspicion. Anyone north of 50 is frequently weeded out of the resume pool. And anyone 60+ had better have a very solid retirement strategy in place.

But this isn't an article about the definition of "old" or perceived bias against the Olds. This article is about the fact that "more-experienced" devs often have a tougher time adjusting to any particular job / task / environment.

It's not just bias. It's real. I've experienced it firsthand. I've seen it in others. I've felt it in my soul.

I don't know if this will help anyone. In any way. But I feel compelled to point out (some of) the reasons why Olds like me find it increasingly difficult to simply fit in - let alone, excel.

I don't claim to speak for all Olds. And I'm not saying that there aren't some aging devs out there who are absolutely thriving in their environments. The following observations are mine and mine alone. Your mileage may vary.


Alt Text

Political Fatigue

When I was younger, I was content to play all of the standard corporate political games. Heck, at times, I even enjoyed them. But nowadays...? Well, let's just say that I've become the polar opposite of a political player - and my unwillingness to "play along" frequently causes tangible problems in my job.

I used to be in management. At one point, I had 60 devs, organized in 6 different teams, that all reported up through me. At that time, I was much more concerned with making sure that I couched my thoughts in the "right" verbiage. I was much more inclined to burn hours writing reports (that I knew would never be read) and checking off audit boxes (that I knew no one really cared about).

About 5 years ago, I purposely stepped away from management. I wanted to "just" be a coder again. I wanted to get as far as possible from standard corporate politics and allow myself to overdose on code.

But a funny thing happened on my way to being "just" a coder again. The politics seems to have... followed me. On a good day, I'm doing nothing but staring at my IDE. But on far too many days, I find myself expected to tell executive management what they want to hear. On far too many days, I'm still bogged down in meetings and endless administrative details.

Since I'm griping about this here, you might have the impression that I'm one of those Cranky Olds. You know, the guy who's gotta complain about every decision - no matter how trivial. However, I don't think this describes me at all.

I'm perfectly happy talking to "the business" or "the client" or "the stakeholders". And I can typically talk to them in a manner that avoids techno-babble and doesn't demean anyone. People can ask me for all manner of questionable deliverables - and I calmly explain to them, in laymen's terms, how those deliverables could have nasty unintended consequences down the road.

For weeks, or even months, on end, these interactions cause me no problem whatsoever. But then it happens...

It is that moment when someone wants you to do something in the code that, quite literally, makes absolutely no sense at all. But they don't just tell you to do it. They fervently ask for your opinion. They insist on making you feel like you've contributed - even when your only logical contribution is to say that this whole idea is batshit-crazy.

But you can't tell them that it's batshit-crazy. In fact, you can barely tell them anything at all - unless it backs up their original request. That's because they keep soliciting your feedback. But they don't want your feedback. They just want you to nod along and do whatever crazy thing they've asked.

When I was younger, I had a much easier time swallowing my objections in cases like these. But nowadays...? Well, while it's easy for me to avoid being abusive or confrontational, it's not easy for me to couch my feedback in such milquetoast terms that the bigwigs can delude themselves into believing that I support the idea.

I don't yell at anyone. I don't use unprofessional language. But you'd better believe that if you ask me what I think of an idea that is truly, epically stupid, I'm going to tell you, in no uncertain terms, that it's a horrible idea. It's amazing how often this simple tendency causes me repeated headaches in my work.


Alt Text

Rejecting the Churn

With every year that slides into my rearview mirror, my patience for technology's relentless "churn" grows a little thinner. That sentence probably makes me sound like a dinosaur. But I'm not complaining about learning or adopting new technologies. (Like nearly any programmer, the process of learning new tech is usually exciting to me.)

I'm complaining about (what I perceive to be) an accelerating trend to throw out established tech - and dive headfirst into new tech - often for no better reason than the fact that someone really likes the new tech (or really dislikes the old tech). If you've read some of my other articles, you might've noticed my frequent use of the term: fanboy.

If you're hyping any particular tech, but you can't make a cogent empirical argument for that tech, you're probably a "fanboy". If you're badmouthing some other tech, but your primary argument against it is that it's old or stupid, you're probably a "fanboy".

Fanboys may sound like a harmless hazard of this line-of-work. But fanboys can cause real damage. If the fanboy is some little-respected kid right out of college, his irrational passions probably won't cause any real problems. But fanboys can be anywhere.

Your manager can be a fanboy. The ivory-tower architect who's friends with the CIO can be a fanboy. The guy who's been working for the company for the last 20 years can be a fanboy. Heck, even the CEO could be a fanboy.

And once the fanboy decides that they hate the tech you're currently working in (the tech that you've probably invested thousands of hours into), and once they have the ear of the decision-makers, it's only a matter of time until you'll be rewriting all your stuff. Or you'll be looking for a new job.

This "churn" doesn't just apply to top-level tech. It can apply to NPM packages. Or style guides. Or... any trivial aspect of our work. And once the opinion in your shop has "evolved", you'll find yourself having to radically change the basic way in which you do your work. Or you'll be looking for a new job.

Do you wanna know why something as (supposedly) trivial as tabs-vs-spaces can still, to this day, infuriate people? It's because you have some people who have been coding with tabs/spaces for years and it's never been a problem. And then one day, someone walks in and says, "OMFG! I can't believe you're still using tabs/spaces!" Pretty soon, you need to follow the herd on whatever trivial decision has been made - for you. Or you'll be looking for a new job.

Please don't confuse this section to mean that I don't want to learn new tech (or techniques). I'm as excited as the next programmer to dive into something that promises to solve a problem. But I'm not excited to switch out languages / frameworks / tools / etc. just because the old way is supposedly "stooopid" and the replacement is supposedly the New Hawtness.


Alt Text

The Cynicism of Experience

When I started in this career, I can think of many instances where my naivete was almost... an asset. You see, sometimes I was too stupid to realize I was being used. But in the process of being "used", I also gained valuable experience. Or I impressed the hell out of the people who saw me breaking my back to make everything work.

In my 20s, any slight suggestion that extra work was needed would lead to me pulling a 24-hour coding marathon. Or working through the weekend. Any suggestion that we adopt some (counterproductive and poorly-supported) technology would lead to me diving in headfirst to learn-and-implement said technology. Any hint of stock options or future IPOs would get me all giddy thinking that I was working for the next Google and I could work myself nearly-to-death - because... I'd be rich!!!

Nowadays...? Well, let's just say that I'm more discerning with my efforts.

I will (and frequently do) work overtime. But the moment I get the sense that my willingness to work overtime is being abused, we're gonna have a little chat. And if our team loses someone, and the company's "solution" is to simply spread the work onto the remaining employees - while keeping all the due dates the same - you can guarantee that I'll be telling everyone, very clearly, that I will not be absorbing someone else's entire workload.

I don't get all giddy anymore about the empty promises of most companies (especially startups). If the comp package includes some stock options, that's great. But if you expect me to consider those options to be all, or a major component, of my comp, then I suggest you start recruiting at the local colleges. I have mortgages (plural). I have bills and commitments. And even if I like your company, I promise I don't like it so much that I'm willing to forgo a market-rate salary.

Here's another scenario where my experience (cynicism) can sometimes cause me problems:

Once you get a reputation in an organization as a proficient coder who can really get stuff done, you can suddenly find many "off the books" requests landing in your lap. I'm talking about those scenarios where someone outside your team's pipeline comes over and starts saying things like, "Hey... How difficult would it be to make this one little change to this app??"

20s Adam would get all excited about those kinda requests. A few brief meetings and I might end up working nights-and-weekends just to implement some kinda guerilla project. Sometimes I'd do it because I was excited about the tech. Other times, I'd do it because I was eager to please. In a few cases, I even got in trouble for doing it. But I almost always found that the boost within the company to my reputation was well worth any short-term blowback.

These days, I rarely indulge these folks. You know the ones. The people who figure that they can completely subvert the dev pipeline by directly cozying up to one of the programmers.

I've had executives try to do this to me (who were, nevertheless, completely outside of my chain-of-command). I've had young ladies try to do this to me, sitting closer to me than is natural and smiling at me more than anyone truly wants to smile at me.

But these days, my response to these folks is always exactly the same. I listen politely to them. I provide any immediate feedback I can which might help to steer them in the right direction. But as soon as they want to push me to actually do the work - outside of the normal dev pipeline - I politely (but firmly) decline.

This may sound like the "right" way to handle this situation. But I've noticed that once I tell someone "no", it tends to come with all sorts of long-term side effects. I've had managers tell me, in performance reviews, that I'm "difficult to work with". Yet when I try to figure out where this assessment came from, it turns out that it's from the same people who were trying to get me to subvert the normal flow of things.

In fact, it's amazing to see some of the stunned looks on peoples' faces any time I tell them, in a professional and unemotional tone, "No. I won't be doing that." Or, "You'll have to talk to the project manager about that." Or, "You'll need to negotiate that priority directly with the client."

For some people, it doesn't matter how professional (or justified) you are. They will still hold a grudge against you if you dare to deny their request.


Alt Text

Little Tolerance For Double-Speak

Maybe this doesn't much bother the Olds. Maybe it just bothers me. I'm not sure. But I know that, over the last 2+ decades of corporate work, my patience with blatant corporate double-speak has steadily dwindled.

To be clear, I understand that corporations have their own vernacular. It doesn't bother me when someone says that we should "touch base offline". And "think outside the box" is a hackneyed (and near-meaningless) phrase, but when someone spews those words, I pretty much know what they're trying to communicate.

But if you tell me that we need to do some "right-sizing", I'm gonna vomit a little bit in my mouth. If you keep preaching to me about being a "disruptor", I know that your idea of "disruption" is for me to work nights-and-weekends to realize your vision. If you ask me to take an "action item", it's your subtle way of trying to assign new work to me without consideration for current project priorities.

I could go on, but you get the point. I've really grown to hate this incessant need to doctor distasteful ideas in some vague form of New Speak.

This hang-up of mine is particularly glaring when someone wants me to chime in on a proposal - and that proposal has no redeeming factors. I can pretty much talk around most potential ideas. But if the idea is simply without merit... I'm going to say so. And that's where people start talking about me like I'm some grumpy old bear that can't be reasoned with.


Alt Text

Knowing Your Worth

How can knowing your worth possibly be a bad thing?? Well, let me explain.

In my 20s, I already had a ton of knowledge and pretty decent programming skills. But I had a sparse resume - and it was more-than-difficult to initially get my foot in that door.

When you're in that part of your career, you tend to think very carefully before quitting, or job-hopping, or getting on the bad side of one of your coworkers. But it's been a lonnnggg time since I had such worries about my resume.

I'm blessed to work in a field where there has always been very strong demand for my skills. And my CV is now at a level where I no longer fret over any particular entry. For the most part, these are good things. But it also means that my willingness to put up with other peoples' crap is frighteningly scant.

I recently had a contracting gig where my entire team was remote - but they wanted me to come into the office every day. So... I wasn't there for long.

I recently had a gig where several of the executives were blatant, boisterous racists. (And misogynists. And anti-Semites.) So... I wasn't there for long.

I once had a job where they made me jump through ridiculous hoops to certify the security of my code (including many audit checkboxes that would do nothing to actually secure the application). But when I showed them how I could easily hack the employee database - and anyone else outside the company could do the same - they didn't care at all. So... I wasn't there for long.

Generally speaking, this sort of hyper-mobility is an asset. I mean, who wants to be stuck in a job where some aspect of it has become onerous?? But the flip side is that it becomes very difficult to justify dealing with anyone else's crap - even for a short period of time.

Again, that's generally a good thing. But I've met other Olds like me who just can't be bothered to hunker down and build a solid history with any single company - because those companies always do something that's rude or unprofessional or just downright stupid. Follow that pattern through 3, or 4, or even more sequential employers and, before long, you have a reputation as this cranky Old who just can't "fit in".


Alt Text

The Cookie-Cutter-ing of Software

One of the most soul-sucking trends in dev over the last decade-plus has been the constant effort to reduce programming to some sort of assembly line kinda process. Although I can understand the desire to refine a complex process into a simpler one, the end result of these efforts is that the programmers often end up being treated like... assembly line workers.

Look, I get it. Software development is hard. And complex. And expensive. And time-consuming. And I also understand that organizations are constantly looking for new ways to simplify these (inherently complex) projects.

But you can't build a sizable, brand new app from scratch and expect that you can just hand a pile of all-encompassing specs to the dev team and have them crank it out like they're building a bird feeder. You see, everyone wants to chase this Holy Grail idea that they can just brainstorm over a big set of specs, hand those specs to the dev team, and voila! out comes the app they were envisioning.

I don't know how many times I've been building some component, and working my way through the specs, when I realize that the client has asked for something that's completely contradictory or nonsensical. And that's fine - as long as I can ping them and have an intelligent conversation about the issue.

But now it seems that, with increasing frequency, the stakeholders wanna just shoot me over a bunch of specs - and then they want me to go away until I have a finished product. Sometimes, they literally get annoyed if I hit them up with questions. And even if they don't mind my queries, god forbid that I ever go so far as to question(!) the design they've asked for.

Most people in my position don't just know how to write code. They know how to build better apps. They know a great deal about what works - and what causes end-user nightmares. Now, I don't have any desire to be a BA or a PM. But the idea that I should never provide any functional feedback on the design of the app itself is, well... it's just ignorant.

When I was younger, I'd offer my meager suggestions. And sometimes the client would even listen. But if they completely ignored me, I didn't much care. I just did it exactly how they'd asked for it.

But I'll admit that, at this point in my life, it's pretty damn frustrating when the client's asked for something that I know will fail or need to be changed once it goes live - but if I bring this up, in any way, the annoyance in their voice is palpable. You can almost hear them thinking, "Why won't this guy shut up and just build the app exactly as we've asked him to??"

Go through that process with enough clients and you'll find yourself wondering why you're even in this career field at all...


Conclusion

I could go on like this for an additional 100,000-or-so words, I'm sure. But this piece is already getting pretty long. I've decided that I'm going to spin up a new series where I actually go through some specific stories of things that I've experienced.

For now, I just wanted to lay out some of the reasons why older programmers really can have problems fitting in with "modern" dev shops. It's not because they're "stuck in their ways". It's not because they can't understand the latest technologies. Frequently, it's because their own experience is almost, in some ways, working against them.

I've noticed this often when looking at myself. I find myself wondering, "How much longer can I keep doing this?" Because some of the stupidity I deal with daily can occasionally get me very depressed.

Discussion

pic
Editor guide
Collapse
aleron75 profile image
Alessandro Ronchi

Hi Adam,
I'm almost 46 and I quote every single word of your article.

When I read "think outside the box" I elaborated on the metaphor and thought: "when we are young, it's easy to think outside the box because that box is small if ever exists."

As time goes by, the box grows and grows, we fill it with something called "experience" and thinking outside of it becomes harder because, well, we realize that a lot of things we need are already in the box.
But nobody seems interested because, well, it's in the box and we should "think outside the box".

I had my most important achievements after I turned 40 and that's because I never stopped exploring, learning, and realizing that the more I see the less I know.

That's the Dunning-Kruger effect that a lot of people ignore because... of it :-)

You can't please everybody but the very first person you have to please is yourself, so keep pushing, never stop learning, fill that box with experience, after all, it's your box, nobody can appreciate what's inside more than you.

Looking forward to reading more from you about the topic.

My best,
Alessandro

Collapse
bytebodger profile image
Adam Nathaniel Davis Author

This is excellent. Unfortunately, it will probably make me far more annoyed the next time I hear someone saying, "think outside the box"...

Collapse
bcncodeschool profile image
GK

This is gold -- "When I read "think outside the box" I elaborated on the metaphor and thought: "when we are young, it's easy to think outside the box because that box is small if ever exists."" 👍🙌

Collapse
hseritt profile image
Harlin Seritt

Good stuff, Alessandro. A lot of things to think about just from your one comment.

Collapse
ericyd profile image
Eric Yancey Dauenhauer

I am not-young-not-old (31) and I personally think you article feels less like reasons that old people struggle in tech, and more an indictment of the industry's flaws as a whole. I think you correctly identify that a lot of these problems stem from young people's eagerness and excitement to prove themselves, but unfortunately that leads to a lot of toxic expectations for the rest of us. Maybe I'm just older than I think, but it seems like a work culture/expectations problem rather than an age problem.

Collapse
dailydevtips1 profile image
Chris Bongers

Hi Eric, I'm also 31 and I think in tech we are considered old, it is like you said because the young college grads love to take on anything it makes it toxic for everyone else.

What I've noted I used to work a lot of free-time for the company, at one stage got a serious relationship and decided to spend MY time rather on the relation.
Needless to say, the company was not amused when I told them I was working for free and never got compensation for these hours, nor did I receive the Porsche they promised me upon selling the company did they silence completely.

Collapse
pippoapps profile image
Pippo Gregoretti

Wait to get to your fifties mate :) even listening to the sound of the wind becomes more important than an overtime commit.

Thread Thread
dailydevtips1 profile image
Chris Bongers

Wise words, can't wait to settle down and not have to feel bad about ridiculous things

Collapse
yaireo profile image
Yair Even Or

31 is a baby. You ARE young my friend, and at the beginning of your career.

Collapse
ldrmuse profile image
Melissa Heying

Thank you for this. I'm about to turn 29 and just spent 2020 changing my career from an Orthodontic Assistant to a Web Developer. I feel young! I'm eager to learn and do as much as I can.

Collapse
hseritt profile image
Harlin Seritt

I didn't get into this field until I was 32. As such, I tell people it's never too late to do what you love and be good at it.

Collapse
luiz0x29a profile image
Real AI

Its a industry that refuses to grow up. As you grow older you start to have enough of it. The same mistakes, the same attitude, nothing ever changes.
My solution was literally quitting the job and opening my own company.

Collapse
bytebodger profile image
Adam Nathaniel Davis Author

Agreed on all points. The underlying issues were always present - even when I was far younger. But the "issue" is that I'm now far less likely to just "put up" with them!

Collapse
infopro94 profile image
Susan Fowler

You think you're old? Try being 60+ and female. Those two factors alone are guaranteed to whack 50 points off your IQ.

I think what you describe goes back to a conversation I had with a colleague post-conference in Washington, D.C. a few years ago. She informed me that once she hit 50 she discovered she was out of give-a-shit points. Fortunately, the older she gets, the less it bothers her.

I've been toying with the idea of forming a company that caters to us geezers and geezerettes. We view the world differently. We have little patience with BS. We have tons of experience and know what the eff we're doing. Whaddaya say? Who's with me?

Collapse
luiz0x29a profile image
Real AI

I'm 30 and I'm already doing that. I opened my company because I had enough with my 20s co-workers ignorance and willing to accept shit for breakfast.
Lets see how well experience/intelligence matches against brute-force/over-nights.

Collapse
mayowa profile image
mayowa

I turn 47 in a couple of weeks, and I 100% identify with your friends running out of give-a-shit-points

Collapse
bytebodger profile image
Collapse
moreurgentjest profile image
more-urgent-jest

Sounds fabulous, where do I apply?

Collapse
aminmansuri profile image
hidden_dude

I'm tired of the constant technology churn as well.

I don't think most of the new frameworks are really making web programming (both front end as well as back end) better. With some minor exceptions I don't feel like we can do a lot more now than we could do 10 years ago or maybe even 20 years ago.

It's just different and uses different techniques.

What I do find though, is that much of the new stuff is missing important things that were discovered 20 years ago.. and a lot of it has thrown away learnings along the way.

That's frustrating. And it seems to be mainly motivated by an impulse to "own the tech stack" than any technical merit.

I really think that this constant churn is harming the industry. Creating unnecessary instability.

I no longer get so excited about some new library... it's just more of the same.

I do however, find that the practices of software engineering have advanced and welcome those. I think that is in ways more exciting than the tech itself.

Collapse
karolyi profile image
László Károlyi

While writing this comment, 2 new javascript frameworks have been created.

Collapse
bytebodger profile image
Collapse
bytebodger profile image
Adam Nathaniel Davis Author

Yeah, I'm very keen to constantly look at new packages / libraries / tech / etc. But it's extremely rare when I actually recommend that we adopt those shiny new things. I guess you can say I've become a tech window shopper. I can easily browse through dozens of new tech solutions without ever feeling the need to "buy" one of them and it home.

For me, it always comes down to one simple question:

Which problem, that I'm experiencing in my current environment, does this new approach solve???

Soooo many times, when I look at new solutions, the answer to this question is just... crickets. Often, the "answer" is just that the new approach is somehow awesome and the old approach supposedly sucks - which I almost never agree with. Sometimes the problem solved by the new approach is something that doesn't even apply to our environment.

Collapse
alliwalk profile image
Allison Walker

I'm not sure if what I'm reading is due to age and experience, or just a realization that there's a lot of emotional unintelligence in the tech world. This is aside from the sexism and lack of diversity.

No one likes to be treated like an engine part, or ignored completely, yet the tech world or the business world seems to be fine with it.

Collapse
d4vev profile image
David Vincent-West

I am in complete agreement with your assessment, Allison, in calling out a lack of emotional intelligence in the industry. The drivers are surely vast and numerable, though I would take this a step further, when you say: "This is aside from the sexism and lack of diversity." I can't help but wonder "maybe the sexism and lack of diversity are strong indicators of this lacking EQ"?

Bringing my own perspective into this discussion as a black man in his late thirties who is actually fortunate to be in a leadership position (granted, the hellscape that is "first line leadership"), I wont say redressing the problems of diversity and inclusion are the magic cure to this lack of emotional intelligence, but redressing the problems of diversity and inclusion along the familiar lines of race, gender and sexual orientation does make room for additional modes of thinking that can (I think) open more pathways for emotional intelligence that aren't presently utilized.

Curious what you think?

Collapse
alliwalk profile image
Allison Walker

That's probably true. Increased training in emotional intelligence (EQ) -- seeing the humanity in our co-workers -- would probably have some spillover effects into some of these tougher issues.

Of course, there's a gendered or diversity-related component to everything. There should be a specific focus on these areas if the goal is to increase awareness and overcome inherent bias. It's both/and, not one or the other.

Collapse
jonrandy profile image
Jon Randy

Wow. I relate to this almost 100%. I've been a professional developer for 25 years, and have been writing code for around 37 years. I've just started a new role and, at 44, I think I'm possibly the oldest there. My tolerance for BS has gotten fairly low over the years, and I'm really not afraid to speak up and tell people that things they're suggesting just simply won't work, are badly thought through, wildly optimistic, poorly implemented etc.

I've been there almost 3 months now, and I'm already getting the feeling I'm being sidelined as the 'grumpy bear' - and yet, people are increasingly coming to me (outside of meetings I appear to be being excluded from) to ask for my advice, and are following it.

I don't want to quit the role, but I don't want to 'tolerate' it either. I'm not sure on the best path forward

Collapse
programmingnate profile image
Nathan Sheets

I've found that the best way to avoid feeling like this is to embrace change and give new technologies a try. Technology is made to make our lives easier, why not let it? I started coding in C++ and C# and resented JavaScript and Python for all the ways they can make our lives easier in the name of 'performance' or just being too prideful to use all the built in functions and features that make them easier to work in than C languages, but embracing change is necessary in this field. I've only just started my coding career and it's too early to get stuck in my ways, and I don't know if there ever truly is a time where you should. Just my $0.02!

Collapse
bytebodger profile image
Adam Nathaniel Davis Author

Your reply is the exact reason why I wrote this article. Someone 40+ says/thinks "wow, this is some real BS" and some younger person, who really didn't pay any attention to the situation at hand, says, "You should just embrace change!!"

There's nothing in @jonrandy 's comment that indicates, in any way, that he's unwilling to embrace change. There's nothing in my original article indicating that I'm unwilling to embrace change. I try new technologies nearly every month. But any talk about embracing change or trying new technologies is completely and utterly missing the point.

Collapse
jonrandy profile image
Jon Randy

Embracing technological change is very much not the issue

Thread Thread
bytebodger profile image
Adam Nathaniel Davis Author

1789: Let them eat cake!

2020: You should embrace change and give new technologies a try!

Yet again, history repeats itself...

Collapse
bytebodger profile image
Adam Nathaniel Davis Author

I feel for you. Seems like this describes my last several gigs. Good luck with that, cuz I'm never sure what the best path forward is either.

Collapse
jwp profile image
John Peters

Don't burn bridges they say. But others say Burn them all, or don't leave.

One thing is for sure, if one returns to the same job, nothing will have changed short of a full manager purge. That rarely happens, and sometimes; the new regime is worse than the last.

meet the new boss, same as the old boss...

One mistake I made early on was not understanding the pressure 1st line managers have. I always mistakenly thought their hovering was just to bug me personally. Now that's funny right there.

Collapse
bytebodger profile image
Adam Nathaniel Davis Author

I personally think that, in software development, being a "1st line manager" is the absolute worst place to be. It's like you get the worst of both worlds.

Collapse
jwp profile image
John Peters

100% in agreement. It's the number 1 political position requiring chameleon like color changes.

Collapse
dailydevtips1 profile image
Chris Bongers

Wow adam really nice article, not sure if I'm old, but seeing the people I always work with I feel old.. (being in tech for 15 years now)

It does really resonate with me what you write about the pushy mentality of literally anyone and everyone...
Making sure they're problem (often a stupid promise) is going to be your problem. Here we go again, Bill made a stupid promise to a client, and has Adam convinced it will really make the client happy if we can just wing this little tiny fix in this sprint.

Now you can't manage this or other works doesn't get done, doesn't matter, it's always your fault...

Really frustrating indeed.

Another one, which I wanted to resonate with you is this one:
In the last 2 jobs, I got hired as a Senior Developer, much like you because I like to develop, and not particularly manage a big team...

I'm still ok, being a scrum leader and guide the new kids to success.

BUT, what really bugs me, is silent expectations..
Oh man, I had another chat with the CEO and Project manager the other day, because they "expected" a senior dev to find flaws in a design? or they expected me to create a full training session for the new kid?

Like I'm all ok if you tell me to do these things, but how must one know you expected these things?

Is this also something you encountered, the silent expectations due to your seniority?

Collapse
bytebodger profile image
Adam Nathaniel Davis Author

Great questions. And some of these are probably best encapsulated in another article. But the short answer is, yes, I've definitely experienced this. There's a whole bunch of confusion out there around what is meant by senior developer, tech lead, architect, and/or dev manager. While it's nice, on many levels, to be "senior", you can also find yourself in these horrible, poorly-defined, unwritten, hybrid roles where management still wants to see you as (and treat you as) a "coder" - but they also want to lean on you to do many of the things one would normally expect from management.

Collapse
sirseanofloxley profile image
Sean Allin Newell

Ah yes, the senior engineer/principal/architect/wizard-ruler-rocker role.

I am recently coming off a lead position (over 3 devs) where i had two more senior than I devs under me and the other a bright college grad. I often scratched my head at why senior engineer X didn't do Y, and every time I asked myself, well, did I ask them to do that?

The clearer expectations are, the clearer everything is! I'm still gonna be working on thwt on my new role for sure; both upwards, downwards, and horizontally.

I'm also about to enter my thirties, so tryin' to chill out. Got a baby now!

amy poehler pregnant bouncing

Thread Thread
dailydevtips1 profile image
Chris Bongers

Yeah 100% not worth getting stressed out about, and I think as with many things communication is key, if you are a senior but none of your previous companies workers with Git (stupid example but it happens) are you then expected to use CI etc without ever being told.
Same for testing, Till this day it has never been a mark in any of the companies I work for, and I still feel comfortable being a senior without it.

Thread Thread
bytebodger profile image
Collapse
dailydevtips1 profile image
Chris Bongers

Awesome! Yeah resonates well, thanks for this write-up, I might also try an article towards this seniority expectations haha.

Collapse
ecyrbe profile image
ecyrbe

Hi Adam,

As an old developper myself, your whole article made me remember my whole career.

When someone wants to make me do something silly, now i first remind them why ,as the more experienced guy in the room, they are paying me. I remind them i'm here to prevent them doing mistakes when i recognize one. And they listen.

Indeed, like you, i made a step into management for almost 6 years and got back into development.

But now i went back as a freelance. It's a completly different experience, even in Big tech companies. Nobody feels threatened by your talent, your performance, thinking you want to take their job. Everybody values your input more seriously. I'm a senior consultant, tech lead, architect... depends on the mission. But i'm always out of the political nonsense now.

Collapse
bytebodger profile image
Adam Nathaniel Davis Author

Oh mannn, that's a great idea. Maybe one that I should explore...

I totally see how freelancers could possibly have the "best of both worlds" - being able to concentrate "just" on coding, but not being drawn into the political BS of the "regular" employees.

Collapse
giorgosk profile image
Giorgos Kontopoulos 👀

I am 18+ years a freelancer and another 3 years before that as a junior developer but I can relate to the politics inside a big company as you describe them. You can get into these kind of situations with clients or other stakeholders. The major difference is that they can more easily abandon the whole project (or just you from the project) if you get into a strong argument about the validity of their ideas or if you seem unwilling to do something. It helps if you have a good reputation and people want you to work for them and have come to you because they value your expertise then they will more easily listen to you.

So just a warning for anyone who is seriously considering to jump. Freelancers don't concentrate just on programming. There is a lot of politics and negotiating going on, perhaps even more than a regular mid/senior developer in a big company. We do get to choose mostly our work hours and sometimes the tech stack but everything else I believe is not as rosy as it seems.

Thread Thread
bytebodger profile image
Adam Nathaniel Davis Author

These are great points, and part of why I've resisted going back to work for myself lately. Freelancing - or having your own business - can be awesome. But they're not a magical fix-all. Freelancers have "bosses" and all of the political headaches that come with them. Business owners have "bosses" as well. But freelancers and entrepreneurs tend to call those bosses clients.

Collapse
pelx profile image
Laura

Up to the point. I am 61 and have been trying to find a job for 2 years. Have had time to learn new technologies and enjoyed it but when I was interviewed by men in their 30th lights go off:) in their heads.

Collapse
elasticrash profile image
Stefanos Kouroupis

This applies totally to me, with the only exception that I became grumpy in my mid or early 30s. A note around fanboys. I am a fanboy, but I will never go and tell people to use this thing I love, I might being it up, share articles etc but no further. But currently there are too many fanboys in my current work and it's getting annoying. Everyone from management goes ..we need to use this (insert trend) language/framework, but it is clear and apparent that this language or that framework is the wrong choice for the task...but that what new people like and it's easier to hire.

I have also starting to see positions for non existing titles....which I am sure for some people it's a thing. i.e React Engineer

Collapse
bytebodger profile image
Adam Nathaniel Davis Author

In terms of really liking a particular tech, sometimes to the point of thinking irrationally about it, I'd argue that everyone in tech is, at times, a fanboy. It's natural. There are some things out that, for whatever reason, you'll just really like. And those reasons aren't always empirically defensible. I do this. Everyone who's been in tech for long enough occasionally does this.

But I doubt you qualify under my definition of fanboy. Because one of my primary requirements for someone to be a fanboy is for them to lack self-awareness. Fanboys actually undermine their own cause (amongst who can think critically) because their wanton "fanning" makes it difficult to assess the true merits of their chosen tech.

Also, I chuckled a bit about "React Engineer". On numerous occasions, I've had a formal title of "Software Engineer". The first time I heard such a title, I remember thinking, "Wait... what?? How is a programmer an engineer??"

Collapse
elasticrash profile image
Stefanos Kouroupis

On the fanboy part ...I am a rust fanboy...but when people ask me what is the benefits of using rust....I give them completely the wrong reasons (important for me) like private modifiers don't apply to unit tests or worrying about linting is not a thing (applied automatically) or my best argument is that documentation is supported out of the box.

But bossiness don't consider them important

Lol see I am a rust fanboy because it deals with my personal pains and not because it's efficient 😝

Collapse
elasticrash profile image
Stefanos Kouroupis

I never found the engineer term weird ...because as some colleagues say about me.....did you he is an actual engineer??? and not a software developer?? (my degree is on Surveying engineering)

I always laugh at that. But I don't find it weird as most of my colleagues are actual (on degree) electrical engineers

Thread Thread
bytebodger profile image
Adam Nathaniel Davis Author

Ahhh, well, that makes total sense if you're degreed as an actual engineer! I, on the other hand, never even went to college. So you can imagine how strange it felt the first time someone slapped the title of "Software Engineer" on me.

Collapse
zoedreams profile image
☮️✝️☪️🕉☸️✡️☯️

true story! as i approach my middle ages i am starting to feel these effects. Personally speaking I attribute these for my desire to work slower and more methodical.. smarter not harder.. After you have written million of lines of code i have learned to had authoring bugs and sprawling code. I guess this goes against the churn society.

Thank you for sharing!

Collapse
bytebodger profile image
Collapse
benhosk profile image
Ben Hosking

You have described some of the reasons older developers struggle and many of the reasons are because they less tolerant and don't work as well in a team. This is a choice because you could use the experience to smoothly navigate the issues you raise and help other developers.

I would add experienced people have less enthusiasm to spend time outside of work learning new technology, tools and this can lead them to using those new technologies less. There is a sunk cost fallacy to developers who have invested years of time become an expert in a language or software product and are relunctant to lose those skills and move to a new technology or software product. I have seen this happen, the IT environment changes and older developers choose not to adapt with it but stick to what they know.

Collapse
bytebodger profile image
Adam Nathaniel Davis Author

I love that you've basically demonstrated most of my points from the article.

Collapse
benhosk profile image
Ben Hosking

Your article explains why experienced developers find it harder, you nailed the part about lack of patience and not putting up with nonsense that people have to earlier in the career (because they have no choice).

I don't think you covered the part that senior developers are not good at evolving with technology changes because they have invested a lot of time, effort and experience in older technologies which become less popular. Experts in one area don't have the same incentive to take the opportunity of learning a new technology/language/software/system.

I would add that many senior developers move into positions that involve less coding and more managing but there are definitely some coders whom that career choice is not appearing (and there is a good case to be made that their should be a career path which doesn't involve management but it's not common)

Another area I would add is senior developers seem more inclined to not be told what to do by junior developers and the number of these grow each year they stay developing.

cookie cutter software is an evolution of the platforms we use and another example of senior developers not evolving with their environment. I would say these are tools to be used by software developers to build systems. Low code/no code solutions still need software developers with the discipline and experience to create a maintainable enterprise system. These are the direction of travel because these system create solution faster and easier (so they cost less). For the code puriests out there , I have seen many legacy/spaghetti code monsters to know that writing code doesn't make a better system. It makes a system that is more custom but the majority of developers don't have the knowledge, standards or discipline to create a maintainble system. Not to mention the cost of maintaining and extending a custom solution is vastly more expensive.

great article, full of excellent observations.

Collapse
dvddpl profile image
Davide de Paolis

Love this article ( even though maybe split int two would be a bit more enjoable)

I am 44 yo, could not agree more. to any point you mentioned

but the one i liked most, i am still struggling at not being disruptive and confrontational during

that moment when someone wants you to do something in the code that, quite literally, makes absolutely no sense at all.

Collapse
skyandsand profile image
Chris C

It really is a mixed bag. There are some older devs in high demand because they are the only ones who know what legacy languages are in some job descriptions. They also demand more salary than millennials which is not always in their favor, depending on the employer.

Then you have some 2020 startups that don't seem to care if you know the fundamentals of computing. All they desire is fluency in some cryptocurrency, new-age protocol that nobody over the age of 21 is even aware of. It's a jungle out there lol

Collapse
johnpkent profile image
JohnPKent

Excellent and so true. As a programmer, the wrong side of, ehem... 59.9, this article is like therapy. I recognize the fanboys. When they criticize some tech just for being too old, I often say that I take it as a personal criticism. Often it is personal, because they don't like their Dads and they don't want to work with someone who reminds them of their Dad. It is an authority psychodrama that I am not interested in getting involved in. What gets worse as you get older is the ageism.

Collapse
brianmcbride profile image
Brian McBride

Damn, I guess I am old. Running my 40s out to the end now.

As I have read through more and more of this article, I think you are suffering from burnout Adam. None of these problems have anything to do with age, but they are related to your mental heath.

I'm not judging you or diagnosing you either. Obviously I don't know you. If you had a positive outlook, this article might be "Ways to better the workplace for developers" offering solutions over complaints. I've felt parts of what you describe at times, but in the end it was MY problem, not theirs.

You can share opinions and even tell someone their idea is "batshit crazy" in a constructive way. I have personally never worked in a place where people honored processes and were called a "difficult person to work with". Now, I have had people say "no" both as an asshole and with healthy boundaries. Yeah, the ass is difficult, the other guy isn't.

Even things like "the churn". This is an exciting time in software development. I've never seen it evolve so rapidly. While I think Facebook's recoil.js is a rehash of hookstate.js because an ego developer there can't make an open-source project better so he has got to make it own... yeah, that is churn and is a waste because junior developers jump on Facebook hype. Still, with that, it's better than that shit Redux. If you have been coding as long as I have, state engines are nothing new. And all my rant there... pointless. Who cares what others are doing. My team and I can pick the tools we like, enjoy the learnings from others, and create cool shit. I will still complain, but partly because I find it a little fun and I like to challenge myself and my team to make decisions based on thought and research.

And yet, with that all, why get worked up? Just contribute. Teach your team what is good and bad about this new hotness. Explain what was built in the past and how that used to work. Contribute to the open-source project if your company will allow it. All this wisdom can be applied in a way that makes the environment better. People bitching about tabs/spaces, use a code formatter, and make it an automation thing. I keep asking my developer to not work overtime. If they do, I'll ask them to take comp hours off. I actively work against the "kill yourself" culture. At the same time, I'm still guilty of it myself. Hell, I took a break coding a new tool for my team over the holidays to read and reply to your article.

When you say "cynicism," I think that sums it up nicely. Maybe you are burned out. Maybe you just never learned great people skills. Not to judge, I personally took a workshop years ago for people skills as I know I have ADHD and maybe even a little spectrum tendency. Most software developers are too, from what I've read. I'm not a natural empath, and I still honestly stuck at people skills in general. However, I have learned enough that the interactions with my team, my management, my clients, and even myself are far more healthy.

Your very last statement is a direct reflection of how you view the world: "Because some of the stupidity I deal with daily can occasionally get me very depressed"

That's your emotional stuff to deal with. I would suggest that you look into that, for your own health and happiness. Sometimes others don't know things. Sometimes others manipulate because they have their own needs or stresses. Sometimes others are having a hard time and they are cynical too. That's is their shit do deal with, not you. Be the best person you can be on the planet. Be the person you want to be. If you've traveled around the sun as many times as I have, use that wisdom in a constructive way. And if all that shit is getting you depressed, you might just look into yourself and find the real core of those feelings.

I appreciate your article. I feel it has a lot of true points, even if it is from a negative viewpoint. I am sure that others have or are having similar thoughts and feelings as yourself. There are a lot of systemic problems in our modern culture as a whole that I don't think people notice, but then come out in issues like you mentioned. But that is another topic. I wish you the best in finding your groove in life again, and for all the others who are feeling the same way.

Collapse
bytebodger profile image
Adam Nathaniel Davis Author

I sincerely appreciate your feedback. And I also appreciate the fact that you spent so much time to lay out your thoughts. There are elements of your reply that I wholeheartedly agree with - and others where I think you've kinda missed the point. (But that's OK. I'm the author. It's not your job to read my mind. It's my job to convey my thoughts as clearly as possible.)

As I have read through more and more of this article, I think you are suffering from burnout Adam. None of these problems have anything to do with age, but they are related to your mental heath.

There most certainly are aspects of my job/career that, at times, make me feel burnt out. I wouldn't deny that for a second. On the other hand, you seem to have taken most of my points and assumed/read that the issues all stem from me. But part of the inspiration for me writing the piece was to point out that there are a lotta "older" devs who may be experiencing the same thing - and the problem isn't always that they're old, or that their skills are slipping, or that they can no longer "fit in". Rather, there are systemic issues in dev that exist for all of us - but it becomes harder for self-respecting types to deal with them as they get older, and they've had to deal with the same issue over and over and over again and they know where that path leads.

The "problems" I point out didn't arise in tech over the last 7-or-so years (I'm 47 now). But my willingness to just ignore them has diminished over the last 7-or-so years.

I've also been struck by the sheer volume of views, likes, and comments that I've gotten on this piece. It's quickly become one of the most popular articles that I've ever written. Granted, that does nothing to indicate that I'm "right". But it does seem to indicate that I've struck a nerve with a lot of people who are in similar situations with similar feelings. Take that for whatever it's worth.

I have personally never worked in a place where people honored processes and were called a "difficult person to work with".

I'm glad you haven't. I certainly have.

As for "the churn", I embrace it.

I tried to specifically spell out that I do not resist change for the sake of resisting change. Heck, five years ago I'd barely heard of React. Now, it's what I want to be writing in all day. But I do resist change when change is presented for change's sake. I saw this scenario play out with class-vs-functional components in React, which has eventually led to Hooks.

If I were recalcitrant, I'd still be angrily cranking out my class-based components and flipping the bird to any of those whippersnappers who want me to do otherwise. But the fact is that all of my development these days is with Hooks and functional components. And I'm fine with that.

My "problem" with Hooks is that, to this day, I've yet to hear anyone give me any sorta reasoned, empirical argument for why class-based components are "bad" and Hooks are "good". I hear all sorts of people hollering that Hooks are great - but when you try to get any reasoned responses out of them, most of their justifications fall into dogma or personal preference.

And yet, with that all, why get worked up? Just contribute. Teach your team what is good and bad about this new hotness. Explain what was built in the past and how that used to work. Contribute to the open source project if your company will allow it. All this wisdom can be applied in a way that makes the environment better.

Honestly, that whole paragraph comes off as a bit condescending. I contribute every single day. I absolutely dive into what is good and bad about the new hotness. I talk about these things with my team. I'm no curmudgeon. And I don't think that my team members see me as one.

I will say that, partially as a result of this blog, there are more people "out there" who get this impression that I really get "worked up". They read my "voice" and they think that I'm just telling everyone every day that their way of doing things is stupid and they should just listen to me, with all my wisdom and experience. But I don't honestly believe this describes me in any way at all.

I sleep exceedingly well at night. My partner (of 8 years) tells me that I'm one of the most laid-back guys she's ever met. I laugh a lot. I fish. I paint. I write. I enjoy the hell outta coding. Do I ever get "worked up"? Sure. Occasionally. But don't take these blog posts to mean that I spend my days yelling and launching spittle at all who dare to cross my path.

A commenter on another blog summed this up nicely when they called me an "iconoclast". I like that word. I absolutely enjoy questioning authority and challenging norms. But I'm not undermining my own peace of mind to do it. I just want to point out the things that, far too often, seem to be ignored.

When you say "cynicism" I think that sums it up nicely.

Yeah. As a writer, I know exactly what that word implies and I chose it purposely. I didn't mean "critic". I meant "cynic".

Of course, I realize that "cynic" can often be a synonym for "pessimist" or "crusty old jerk". But that's not how I meant it. I meant it as someone who's seen this movie. I know how it ends. And no matter how many times I try to express that to others - and no matter how carefully I try to couch the message - they still insist on watching the movie till the end. And they still insist on being shocked that the flick didn't somehow end on a better note this time.

... that's culture again.

Bingo. Couldn't agree more. The "issue" IMHO is that I've been through a rather long list of employers in the last half-decade-or-so, and no matter where I land, it feels that I'm constantly running headfirst into crappy culture.

And please, please, please believe me when I say that, through a certain lens, that last sentence can sound rather "suspect". It's suspect because, if you've dated 10 people, and you've come to the conclusion that all 10 of them were jerks, then maybe, just possibly, the problem is with you, and not with those people you dated. And trust me, I get that. I've been re-evaluating myself, almost constantly, for the last several years. And I know that all of my "issues" are not someone else's problem. I certainly play a role in all of my interactions. And I certainly bear a great deal of responsibility for the manner in which I fit in (or not) with any particular culture.

But in my own self-analysis, I've also come to realize that many of the things that now bother me were always there. It's not that the dev world has really changed that drastically. It still has most of the same rewards and headaches it had two decades ago. But two decades ago, I was much more likely to just grin and move on. Or, in many cases, I simply didn't acknowledge the headaches for what they were. Now that I'm more of a "grown-ass man", I'm much less likely to grin and move on.

Again, I'd like to say that, overall, I deeply appreciate the time you took to give such excellent feedback. But I'd be lying if I said that it doesn't feel a bit like, "The problem is just you. So learn to get over it." I know that's not exactly how you said it or meant it. But considering that this was precisely the point I was trying to rail against in the piece, I can't help but feel a little bit like that.

Collapse
brianmcbride profile image
Brian McBride

Thanks for the thoughtful counter reply.

Yeah, I started off by saying I don't know you. And my ignorance is huge in that regard. I don't mean to offend or imply anything. I was sharing opinions based on what I heard (and even that is suspect as I am not best best empath myself!)

I think I hear, basically, all this shit has existed and now you've done it enough times, you don't want to deal with it. I totally agree with you. I did the opposite, instead of sliding back into developer-only, I moved to a company where I could be in charge to make the change. I still make many mistakes and probably cause some of the issues you mentioned, but I'm trying :)

For me, I'm living life with the analogy that we all walk on our side of the road, even if we are going the same direction. I'm responsible for my side, you are responsible for yours. We can't make others do better, we can't make them not have a crappy culture. All we can do is represent the culture we want.

So, again, I don't know you, and your counter-responses are well articulated. So I'll just reflect that from an outsider, it read a bit like a "bitch session" :)


And speaking of bitch sessions. I totally agree with you on hooks. Functional components could be faster in some benchmarks (Maybe?). At least I thought I remembered that. But, I suspect that early on, "Pure" functional components didn't have all that hook state management code in there.

The ONLY argument about functional components and hooks that I have heard of is "you don't have to deal with the 'this' keyword". Now we have useEffect, useMemo, useState, useContext, blah, blah, blah... Not only that, but front end developers are starting to put more and more app-wide state into their hooks or API calls that don't cancel out properly. So I guess Facebook thought to abstract it all away was better? I can see some of the arguments... but now there are new problems. So now Facebook has to create Recoil.js (basically Hookstate.js... sigh) to offer better performance as useContext sort of sucks at scale. I personally keep wondering why we just don't make Observables part of the ecma standard so we can use libs like RxJs even more efficiently. I mean, RxJs can make a state engine in a few lines of code and has way better operators for events.

I can definitely bitch and complain :) Next week I have a big tech talk on why GraphQL is leading us back into building monoliths (which is fine if you intended that) and the problems that will impose at the enterprise scale. It is so true developers keep repeating the mistakes instead of learning from the past.

Thread Thread
bytebodger profile image
Adam Nathaniel Davis Author

If you're ever bored and wanna read more longwinded stuff, check out some of my other articles. I've written a lot about JS's class hatred - and its fascination with all things functional.

And to your point, I will never quite understand the irrational fear that many devs have over the this keyword. When I first started using anonymous functions and arrow functions, I found those constructs to be far more counterintuitive than any problems associated with this. But I've heard from numerous JS devs who, for whatever, seem to have some kinda mental block when it comes to this.

Collapse
steelwolf180 profile image
Max Ong Zong Bao

Hmmm.. after reading this, I won't blame senior developers to want to jump out of the industry when they reach your age.

How would you impart advise to someone younger to prepare for this eventual move towards becoming what you hate?

Collapse
bytebodger profile image
Adam Nathaniel Davis Author

The trite answer to this is that, if I had those answers, I wouldn't be writing this article in the first place. But even though I struggle with some of the "issues" outlined in this article, I do believe there's value in continually trying to solve for a better solution. So with the full caveat that I don't properly know how to advise someone younger on these problems, here's my best stab at it for the time being:

  • The older I get, the more importance I see in the "fit" that you have with your employer / team / job title / etc. When I was younger, I didn't much care about these things. Work was work. Didn't much matter if I was working for a massive corporate retailer or a small startup in healthcare or a government contractor. But I've only recently started to (finally) become leery about jumping to an opportunity with any employer / team / etc. that just doesn't "feel" right.

  • You've gotta be honest - really honest - with yourself about your own personality "quirks". It can be really tempting to jump to that new opportunity that's offering $10k/year more. But if, for example, you don't thrive in big corporate bureaucracies, and this latest offer comes from a big corporate bureaucracy, well... you can imagine how that plays out.

  • If you have even a shred of risk-tolerance / entrepreneurship about you, I think it's always a good idea to keep working on side projects. One "solution" to the problems I've outlined in this article is to not work for anyone at all. To be clear, I'm not working for myself right now. And I haven't for a number of years. But I keep thinking about new things I could build that would get me out of those political arenas.

  • Do not isolate. Meaning: don't ever hunker down in a technology / environment just for the sake of hunkering down and being stubborn. As soon as you get pigeonholed into a specific tech stack, your aging rate (to potential employers) immediately triples. Sometimes it can feel painful to adopt a new tech if you don't honestly see any benefits in it (for me, TypeScript would fall into this category), but it can be far more painful to find, in a couple of years, that all the plum jobs are now featuring that tech stack that you so stubbornly have avoided.

I'm sure there are many, many other tips that I could come up with if I sat down and thought about it for hours. But these are some of the first ones that popped into my head.

Collapse
stereoplegic profile image
Mike Bybee

While I've been in the startup game for over 5 years now (as "employee #1," co-founder, etc., not random growth hire), I'm really diving in lately. As I binge the Startups For the Rest of Us podcast, host Rob Walling (ex Drip, current TinySeed) keeps referring to himself with a term that resonates with me more and more: "Unemployable," for all of the reasons you mention, especially the politicking, doublespeak, and knowing my worth.

My last go at a hiring process lasted a month and a half, went from hiring for one department to another, several interviews (several repeated due to the switch of departments), and finally an attempt to negotiate conversion salary down (this was your typical staffing firm CTH scenario, with a just as typical crappy client, because I usually just don't have the time to apply directly) before waiting another several days to extend a formal offer, then a "HURRY UP" when I had an emergency to deal with while waiting on them. I told them to go F themselves (really) and doubled down on my startup and partnerships.

Unemployable indeed.

Collapse
bytebodger profile image
Adam Nathaniel Davis Author

This definitely wins the award for Comment That Made Me Think The Most Today. (Don't you feel honored??)

The "unemployable" thing gnaws at me. On one hand, I think I enjoy the pure act of coding now more than I ever have. And I know that my overall coding prowess is stronger than it's ever been.

On the other hand, it feels to me like some of that ancillary political stuff keeps getting amplified in my gigs. To the point where some might say that I'm "unemployable" - even though I can code now better than I ever have.

Collapse
stereoplegic profile image
Mike Bybee

I've come to realize this about myself: I'm far less averse to the risks inherent in early stage startups than I am to the BS which has inherent potential in all companies, but which only grows exponentially with company size.

Collapse
kbauman profile image
Kevin Bauman

I think I've written this article, in my mind, about ten times a month, for the last several years.

I was late to get into software. It was probably my fifth or sixth career. It was easy to get work, so I kept doing it.

Now, at almost fifty, I run into these issues often. The only thing that seems to work out for me is self-employment. I had a slowdown during the pandemic, and took a full-time position. This lasted for about 3 months. I was underpaid, and the solutions used to solve simple problems were overly complex, brittle, and poorly documented. Of course, the agency had underbid to get the work, and couldn't afford any learning curve. So, if you didn't already know whatever, obscure, undocumented thing, or weren't willing to do it overnight, without billing for it, you were costing them money.

Additionally, they weren't used to remote work, so when we all had to go remote, a 10 minute response time to a Jira ticket comment, Slack comment, Figma comment, email, text...was just unacceptable.

Needless to say, I didn't last long. I'm back to self-employment, and much happier. My clients appreciate me, and allow me to make pragmatic decisions. Let's face it, the end user doesn't care about Svelte V3 (I think it's cool, but users couldn't care less). My clients want something that solves their problems. That's it.

Collapse
bytebodger profile image
Adam Nathaniel Davis Author

Soooooo much "yep" in this reply. For some strange reason, there's this small part of me that still wishes that I could find The Magical Employer. The one that would be a "perfect fit". (You know... like naïve kids who fantasize about their "one true love".) But the more ways I turn it around, the more it keeps smacking me in the face that these "issues" will just continue to haunt me (or even get worse) the longer I delay going back into business for myself...

Collapse
johncarroll profile image
John Carroll

I found this to be an incredibly well written and insightful blog post. I wish I could like it more times.

Collapse
johncarroll profile image
John Carroll

Unrelated, I just noticed that the date associated with my reply is Nov 27th but I'm in California and the date is actually still Nov 26th. Found a bug!

Collapse
eelstork profile image
Tea

Could be a UTC date would that still count as a bug.
Date is actually a fuzzier concept than the speed of light.

Thread Thread
johncarroll profile image
John Carroll

I briefly entertained the possibility that dev.to was intentionally using UTC dates, before discounting it. Forcing everyone to use UTC (especially without any indication in the UI that that was happening) would just be poor design. I don't think DEV would do that.

In this case, I suspect it was a DST issue on the server. I created an issue in the dev GitHub repo.

Thread Thread
bytebodger profile image
Adam Nathaniel Davis Author

I see this issue often and I assume (but don't know - I haven't gone so far as to inspect the code) that this is caused by saving values in UTC - but forgetting to convert them to local time on the display end. There are many ways to handle internationalization, but the standard approach I've always seen is: Store everything in UTC (i.e., in the database). Then transform it on the display end according to the user's locale. But this approach (if that is indeed what they're doing) often leads to these kinda little bugs where someone wrote some code that just grabs the raw date value and doesn't bother to localize it.

Of course, maybe something entirely different is going on... ¯_(ツ)_/¯

Collapse
bytebodger profile image
Collapse
primadev2 profile image
Primadev

I am 38 year old, start learn coding at 33 year. Learning by doing I sell digital product wordpress theme on themeforest on 4 years, I don't know how to say, but I love coding, learn php, js an python etc.
I feel old when met other people, but I feel young when I code😂😂.

Collapse
craigs100 profile image
Craig

Great article. I'm 60, have been building all sorts of web sites since 1997. Prior to that I was an electrical engineer working on huge naval systems for 20 years. I went self-employed in 2004 because I developed a serious aversion to corporate BS. I run my own one-man shop. Won't work for meglamaniacs, won't work for people that don't want advice (i.e. the just build it and don't ask questions types). I get a massive kick out of helping people and being involved in making stuff better. I get good customer satisfaction reports because I care about their issues and give good, personal and timely service.

Looking back, I don't really regret the times I jumped on the shovel and asked "what colour". It's a great way to get experience, heck I even do it now sometimes. You can do a lot with experience quickly, which it's why it's worth a premium. Getting the experience is the hard part. Some advice would be, to find your level of burn out once, and don't do it again. Try not to be too cynical. Be accepting of new tech but only keep the stuff that adds something worthwhile. Over time you get to see a lot of new stuff so can handle change better as time goes on as you've had more practice. Be very wary of sales and marketing types as they'll burn you and not think twice. Keep smiling, be kind :)

Collapse
bytebodger profile image
Adam Nathaniel Davis Author

Excellent advice on all points. Thank you!

Collapse
drbeehre profile image
DrBeehre

I'm a baby at 25 with an entire year of professional developer work behind me! Rest of my time has been in infrastructure work and getting my software engineering degree.

I'm about to start a job and a junior SRE for a well established software company that's looking to radically expand and I have no idea what to expect.

This post is an awesome insight into some of the things I should expect out there! Thanks for sharing!

Looking forward to following your future posts!

Collapse
bytebodger profile image
Adam Nathaniel Davis Author

Glad to hear it! And I hope I haven't written anything here that's too negative for you. There's much to love about this vocation. There are just some things that never seem to get better. And when they don't you can get kinda tired of them after 20+ years... But I'd recommend this life for nearly anyone who has the aptitude!

Collapse
drbeehre profile image
DrBeehre

Oh don't worry! You haven't scared me off!

If anything, it's refreshing to hear that it isn't all sunshine and rainbows like the world of IT is sometimes portrayed. To me, this post has just highlighted a lot of things I've already heard a bit about but in more detail, and means that I won't get my hopes up and will at least be aware of some of these issues.
At least now I have a good baseline to compare any of my future companies with and will hopefully be able to tell when I've got it good!

Collapse
alxtrnr profile image
Alex Turner

I am 'old' (51) and new (learning to code for 12 months). Background in health and social care. Many parallels to be drawn with your experience albeit in a different industry. Chances are the experience is mirrored to varying degrees across many disciplines. Acquiescence to 'prescribed' innovation becomes a self cancelling condition. The requirement to nod and agree is a lurch towards learned helplessness.

Your observations have helped consolidate some ideas I had about what it might be like to have a 'programming job'. Quite illuminating. Not disappointed, more so glad to be way 'too old' for all of that.

I do though like the idea of spending more time coding. Thinking a way for me is to code up the means to deal with some processes I encounter at work. Currently working on a couple of ideas. Keep heading in that direction seems to be the thing to do.

Collapse
bytebodger profile image
Adam Nathaniel Davis Author

Great points. At times, I find myself falling into the easy fallacy that all of these issues are somehow limited to tech/programming. But I'm sure that much of this is universal.

But you're right - the time spent actually coding is still incredibly enjoyable. It's definitely the best part of my working life.

Collapse
genster profile image
Ryan Cole

You know a lot of these attributes are considered assets over here in Europe. People here are much more direct generally speaking, and expect you to be assertive with dissent. Maybe consider a second career on this side of the Atlantic :)

Collapse
bytebodger profile image
Adam Nathaniel Davis Author

Oh, man... I'd absolutely love to be in Europe! And not just for vacation. Me-and-mine have been trying to figure out the best way to get the heck out of the US for a little while.

Collapse
redfred7 profile image
Fred Heath

What a great post! So much in here resonates with me. I too am much more discerning with my efforts, and NewSpeak makes me come out in spots.

I've had younger developers explaining event-sourcing to me like it was so damn innovative, ignorant of the fact that I was doing transaction-log db recoveries when they were breastfeeding. Or being gung-ho about about meeting that totally artificial deadline imposed by some manager. Or rolling their eyes when I suggest we use a good ol' relational DB instead of the latest real-time, iot hotness. Hey-ho.

Collapse
bytebodger profile image
Adam Nathaniel Davis Author

Ooooh, I love that relational DB example! I've heard some people talk about relational DBs like they're a deprecated symbol of a bygone era.

Collapse
tardisgallifrey profile image
Dave

I just turned 60 this year. I'm at your state. I've done management. I've done politics. I'm through with them all.

While I'm not a programmer by profession, it is part of my skill set where I work. Your observations are not just happening in technology but it happens in many corporations and large businesses. I nodded my head on many of your anecdotes.

I think one of the things that gets me as I've grown older is that my BS meter sensitivity keeps increasing. I can spot BS far easier now than I use to, and I don't have any flowery words for those spreading it either.

Good read, sir.

Collapse
shenshawvfs profile image
Scott Henshaw

Well said, my friend. I'm not only an older dev, but I have also excelled into and voluntarily out of management in the game dev business. Take your comments about the OT culture and youth movement of fanboys and multiply by 10. At first, I was also a bit bitter about working with as you call them "fanboys" who didn't understand the tech they used.

Most devs under 30 these days can't do the math to build their own render engine little own explain how the game engine they use works. But, I've found this leads to new opportunities.

I find more and more I can use my experience and patience as a teaching tool. It gives me an opportunity to help some realize that what was old wasn't all bad, what's new isn't all great, and that OT culture is bad management planning. It's not that younger devs can't, they just haven't lived some of the older/better ways.

If you can find that position where part or all of your role is that of the educator, you learn and you can help the next generation do and understand more. You can also teach them how to be better professionals, to recruit and retain the best talent -- not the youngest / best grades / most prestigious university / best looking / most popular. I believe that is the next evolution of the profession, and that as the older devs who have scars and war stories it's up to us to find the fanboys with potential, those who are willing to listen and teach them. We'll all be better for it.

Collapse
kspeakman profile image
Kasey Speakman

I expected to hate the article, but no. Truth was found here.

I've been at this 20 years now. It is very frustrating how many times you see the same ideas being recreated every couple of years. Fresh branding, maybe even different to code, but the fundamental trade-offs are only marginally different. Which will lead to its eventual replacement by the next one.

And things that make truly different trade-offs, most people do not want to try because it is too different from what they are used to. :)

Collapse
kspeakman profile image
Kasey Speakman

Could also be seen as: we like playing with legos, not necessarily building things. As I get older I'd rather just build things.