FYI: it’s typically management who cuts corners, whether in hiring or process. I’ve met a few exceptions but most devs take pride in their work.
Tips:
- if you’re experienced and management insists on cluegy solutions, either refuse or leave a trail of tickets and comments re: technical debt for the next dev.
- If you’re not experienced, or if you feel out of your depth and have no senior to turn to, know that you will with time and just try do your best.
- In either case, experienced devs will understand the situation and won’t judge you.
- Also in either case, fire the client.
Another method I’ve used extensively is to block code reviews on unmaintainability. Management has insight into high level stuff, but devs where I work dictate what gets merged.
Whenever I can, my code isn’t ready yet, it needs a few tweaks until the code is viable. That way, if I can never touch the code again, it has a chance to not be terrible in the future
I was on the receiving end, except the roles are reversed. Dude retired and left an undocumented spaghetti mess.
But! He worked on a code base by himself for two years, on a subject matter he knew nothing about, in a language he didn’t know, and kept asking management for help. I don’t blame him a single bit, not the tiniest iota. 200% management fault, once for having him do that and once again for ignoring his cries for help.
It feels like you’re describing one of my previous jobs
Oh, were you going to give me a raise that’s more than inflation? No? More than 6 days off a year? Oh, no? Match a 401k? …no. Yeah, good luck with the clusterfuck. The little energy I had beyond just making this function went into purposely obfuscating everything. Just give it to your AI, that’ll sort it out.
I mean, i asked them to allocate time for me to write documentation and they didnt reply to those emails. Its not unmaintainable, but its still not very well documented apart from some comments on the more complex or intransparent sections of the code.
If {Kolanaki != Employed_Here} then {exit()};
Making myself unfirable. 😎
Goddamn that’s a great quote
I wish I’d known about it in 2020 when the powers that be made it excruciatingly clear that “essential worker” was code for “acceptable sacrifice”…
And making your coworkers hate you.
There is only a problem if I am not their co-worker, tho. 🤷🏻♂️
Is this the new industrial sabotage?
Nope. It’s the norm. Well maintained code is a rarity.
It’s a rarity because the nano second a prototype works, it never gets touched again because management only heard it works and don’t give dev more times to make it proper.
So imagine management deciding to ask devs to go back and clean-up a codebase, pure fantasy.
So just don’t tell “management” it’s done. Easy.
I try to do that as much as possible, but comes a point where you can’t push back the task in the next sprint.
Taking a job at DOGE
This was my first laugh of the day. Cheers.
This explains a lot.