Hiring a software engineer in their late 40s:

Pros:
* Understands your stack better than you do after glancing through the repo for five minutes.
* Will rewrite said stack 2x as fast, and half as buggy if you let them.

Cons:
* Gives zero fucks.
* Knows we're not *really* like family here.
* No, seriously, absolutely zero fucks given.

Do not cite the deep magic to me, product manager, I was there when it was written.

@saramg are these firm reqs? I'm only in my early to mid 40s.
@SamJSharpe More like guidelines... ;)
@saramg @SamJSharpe early 50s. This was definitely me. Have I mellowed? Have I f—
@rgarner @saramg @SamJSharpe
Over 50s - won't rewrite the mentioned stack because truly zero fucks is given. Instead, (pros) no complaints about your coding style.
@jdoe @rgarner @SamJSharpe You're not the first to say this and it gives me hope that there are valuable lessons left to be learned and even fewer fucks to give.
@saramg @jdoe @rgarner @SamJSharpe you can always give one less fuck.
@ischris @saramg @jdoe @SamJSharpe what does negative fucks look like? I've been thinking about it all morning.
@rgarner @ischris @saramg @jdoe I don't know, I've never run into negative fucks. I built a service about a decade ago to top them up as needed. https://github.com/samjsharpe/fgaas
GitHub - samjsharpe/fgaas: disclaimer: has some swearing

disclaimer: has some swearing. Contribute to samjsharpe/fgaas development by creating an account on GitHub.

GitHub
@SamJSharpe @rgarner @ischris @saramg What's going on? Why am I getting notifications on this years old post? Did one of you try and succeed to give negative number of fucks and inadvertently has opened a portal to a necroposting narnia?
@jdoe @SamJSharpe @ischris @saramg I'm afraid I did. I can't move my neck properly any more and I'm haunted by an extremely cynical ghost. Don't give negative fucks, kids, it's not worth it.
@rgarner @saramg @jdoe @SamJSharpe
a negative fuck is that which annihilates a positive fuck upon collision. furthermore, as negative fuckage builds, it can draw in an increasing number of fucks given from the surrounding area, thereby negating fucks given by e.g., managers, other devs, or even clients.
@ischris @rgarner @saramg @jdoe @SamJSharpe
Negative fucks are contagious, as they lead to Quiet Quitting, which can spread through any closely-working group.
@mcpinson @ischris @rgarner @saramg @SamJSharpe
These are all good conjectures. Would be nice to test them in a controlled setup, in a lab. I wonder what would be the outcome of the fucks annihilation. Would it be pure energy or some other substance? 🤔

@jdoe @ischris @rgarner @saramg @SamJSharpe
Note that Fuck Annihilation (F.A.) energy can only be used to produce busywork, such as tidying the supply closet.

Actual productive work can only be accomplished through the Coffee Cycle.

@mcpinson @jdoe @ischris @rgarner @SamJSharpe Coffee? Ahem. I believe it's spelled T E A #ftfy

@jdoe @mcpinson @ischris @rgarner @saramg @SamJSharpe

The outcome of a fuck-antifuck collision is usually open head count

@jdoe @rgarner @saramg @SamJSharpe

Over 50 - I'll incrementally refactor your stack into something elegant, maintainable, and fast. But only because that's fun. And I'll get fired^Wlaid off because my manager doesn't see the value in that and just wants the current fix done, even if it takes longer to fix the current shitty codebase than to refactor it first so that the fix itself is trivial.

@SamJSharpe @saramg yeah I would say this applies to mid 40s too 😂
@Matthewcford @SamJSharpe @saramg I think it’s more on experience than with age, because I had the same impression since <40.
In my team we are also very open about it, so the younger will observe themselves even earlier.
@SamJSharpe @saramg I'm only 40, but I've been in physical therapy for my back for the last three years and I have negative zero extra fucks to give. Pretty sure I'm already there.
@saramg Wait till you get to your fifties.

@sleepyfox @saramg with regards to that item:

Pros: deletes half of the stack, reducing maintenance costs and making it easier to use . They would delete 90% of it, but know it’s not worth the fight.

Cons: tends to rant on about how they would have done it in ancient languages like Perl/php ;)

@phredmoyer @sleepyfox @saramg
I'm in my 50's; and could I perhaps interest you in Fortran for your next greenfield project?
@sleepyfox @jannem @phredmoyer @saramg came here to write the very same comment. Of course: LISP.
@jannem @phredmoyer @sleepyfox @saramg Back when FORTRAN was not even THREETRAN...

@stonebear @jannem @phredmoyer @sleepyfox @saramg

WATFOR? I ask myself what for? every time I have to use it!

@jannem

* from an alley darkly *

psst, wanna buy some lowercase?

@phredmoyer @sleepyfox @saramg I’m in my twenties, and there isn’t a single system I’ve seen that I couldn’t have written better in Perl.

I would also have deleted 50% of the stack, but no one will let me. So I guess I have to wait until I’m forty.

Pros of staying around that long: I’ll be the one supposed to put up a fight when someone tries to delete 90% of the stack, and I just… 🤔 won’t. 😈

@phredmoyer @sleepyfox @saramg let’s be honest, Perl/php is far too modern. It would really be like Fortran or Lisp

I am 47. Perl is ancient. Last time I had to maintain something written in Perl was about 20 years ago.

@R4_Unit @phredmoyer @sleepyfox @saramg

@hrw @R4_Unit @phredmoyer @sleepyfox @saramg Last time I had to maintain something in #Perl was yesterday. You can keep at it if you’re living right 😁

@R4_Unit

Who are all these poor bastards who were using FORTRAN in the early 90s?

I got to college in 1989 and was promptly taught LISP in the classroom and perl by my friends. JavaScript came along in the early-mid 90s with Netscape and I learned to use it because my alma mater - through whom I was getting my Internet access and personal web presence - wisely didn't allow users to serve arbitrary CGIs, so I had to do all the web automation I wanted client side. The controversy about it was that it was named to horn in on Java's glory, despite having nothing to do with it, and precipitating a full decade plus of confusion in HR departments and placement agencies.

Also C and C++. I knew a guy who did COBOL and made out like a bandit leading up to Y2K.

@phredmoyer @sleepyfox @saramg

@phredmoyer @sleepyfox @saramg

php? I don't like that modern crap. And I'm only in my early 40s

@phredmoyer

What have I ever done to you to be called out like this

@sleepyfox @saramg

@phredmoyer @sleepyfox @saramg "Why didn't you come to the meeting?"

Because I was too busy rewriting this crap.

@phredmoyer @sleepyfox

Perl? 🐫

No, no! I'm in my 20's and I often use Raku instead of Perl. 😻

@sleepyfox @saramg I was waiting for the grays to respond to this one… 😄
@sleepyfox @saramg 50s is knowing that if you rewrite the stack you'll be stuck writing code for the rest of eternity as you're beyond even your senior devs level.
That sounds arrogant but honestly if you've been writing code 20+ years longer than your senior devs if you're NOT working at a different level then 🤷

@scottgal My take was "rewrite the stack" was hyperbole for a ju-jitsu-like "make the right set of changes to dramatically change things" rather than a literal Musk "we need a total rewrite!!!" which sounds like NIH.

Often that's still a challenging project, like a rewrite of a key component, but yeah, not an end-to-end rewrite.

(Maybe I was overly generous in my interpretation of the post. :)

@sgf Yeah I think the fancy name is 'Transformational Architecture' or less fancy 'code jenga'; changing a running app and making it better while keeping it running I think only really comes from experience. The irony is that the more able you are to manage that sort of thing the less likely you'll be in a role which allows it.

@scottgal I've seen people successfully keep doing such stuff, really well, at the expense of "career advancement", but yeah.

On the other hand, you get more opportunities to teach/lead others to do so. Although that's not to everyone's taste I guess.

@sgf Part of it's just practical. You price yourself (either financially or skill level at stuff like architecture etc) of the 'fun' dev jobs. Staff Engineer jobs exist but they tend to be at big corps; using someone like me as a dev is EXPENSIVE when I add more value *not* writing code.
@sgf Example this last go-around I applied for DOZENS of 'senior dev' jobs but the constant refrain was I was 'too experienced'...no idea if the lead thought I would be unmanageable / they though I was so old I'd croak, it never gets that far.
@scottgal That seems pretty a pretty fair assessment, and I'm sorry that it sucked for you. My experience has been mostly big tech and (old-school) finance (and specifically the London market), where they can pay for experienced devs, so my view's clearly biased.
@sgf @scottgal
I took it as an actual rewrite as that is what has happened in my experience. We hired one guy who took it on himself to completely redesign and rewrite the entire code base. He did it in a week end and it immeasurably better.

@HLGEM @scottgal Woah. I mean, partly it needs to be of a scale & style where that's practical, but also just because stereotypical knee-jerk rewrites tend to be "because I wouldn't do it like that" and leave the rest of the team befuddled, so it's pretty great that it worked.

I've seen systems that needed killing with fire, but they got that way through political bun-fights that no amounts of solo not-giving-a-fuck will bypass. Do you reckon you lucked out on corporate culture on that one?

@sleepyfox @saramg pretty sure the reason I didn't get the last job I interviewed for was my insistence that a 35 hour contract meant I would work 35 hours rather than the usually expected academic 80 hour week.
@saramg I am in this photo and… I like it.