AboutAm Debeleper. Many good. Such code. Dev good. Manager Bad.
Joined devRant on 4/29/2021
Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple APILearn More
Manager: What’s taking so long on that PR?? It’s just some small styling adjustments
Dev: No it’s not you added an entire new calendar module that doesn’t work
Manager: Ok but besides that it’s just a small couple of css edits
Dev: You made styling changes in 50 files, half of which break our mobile responsiveness
Manager: Well then STOP talking to me and FIX IT if you’re so smart.
Dev: You also added a series of filters on a table in this same PR that cause th—
Manager: OK SO I GOT A BIT DISTRACTED THE FACT IS IT ALL NEEDS TO GET DONE SO IT DOESN’T MATTER IF IT’S ALL ON ONE PR SPLITTING THINGS UP INTO SMALL UPDATES IS JUST UNNECESSARY BUREAUCRACY AND IF YOU LIKE THAT THEN GO. WORK. FOR. THE GOVERNMENT!!!
Manager: I’m so sick and tired of you devs whining about technical debt and how it’s slowing down our progress, so here’s the deal. You have until the end of this week to eliminate all technical debt in the codebase. After that I NEVER WANT TO HEAR YOU COMPLAIN ABOUT TECHNICAL DEBT EVER AGAIN!!!
Manager: This code you wrote violates the single responsibility principle!!
Dev: How so?
Manager: You have one function that you call in *MULTIPLE* places. That’s too much responsibility for one function! Functions should only have one responsibility!! Creeping the scope of a function beyond that is a TERRIBLE way to write code!
Dev: But why spin up multiple functions that all perform the same thing?
Manager: Well if a function has a bug in it and you use that function multiple places then that bug exists everywhere you use that function. If a function only has one responsibility then if it has a bug that bug will only exist in the single place it is called! You really should think first before asking questions like that.
Manager: You can’t define an async function without using await.
Dev: Yes you can.
Manager: Well you shouldn’t, there’s no point!
Dev: Yes there is. It can turn blocking synchronous logic into work performed concurrently. In this case the perform—
*I looked at the book he’s reading, it’s from the < ES6 era… no wonder he doesn’t see me using any of those archaic patterns/hacks/workarounds…*14
Manager: THE SERVER IS DOWN THE SERVER IS DOWN!!!!
Dev: Ok I’ll look into it
*5 mins later
Dev: Wow these are really strange logs, it’s like config values are being changed all over the place while I’m looking at it
Manager: Well I figured while you were looking into it I’d go i to the server settings and change everything I could find in order to try and get the server back up again. Two sets of hands are better than one, Is it up yet???
Manager: I THOUGT YOU SAID YOU’D LOOK INTO THIS. I NEED ANSWERS NOW. WHAT IS TAKING SO LONG?!?!?
Dev: What do you think of the new version of the app?
Client: It’s great! We just have a couple notes of feedback we are working on compiling. We should have those to you by next week.
Client: We need another week to compile all of this feed back we are generating
*Another week goes by*
Client: Still working on it, it’s going to be a really thorough review when you get it though. No stone will be left unturned!
*2 weeks later*
Client: Here it is!
Attached: A word document with a single line of text “can’t nobody log in” next to a picture of the login screen with a red circle drawn around the login button
Client: Can you hurry up and action our feedback? We want to go live next week
Manager: You devs are constantly complaining about context switching, if you were on my level you would be able to multitask and switch from task to task without an— hold on I’m getting a text *tap* *tap* *tap tap* *tap* *send noise*
Manager: Right, what were we talking about again?
How to psych-out a machine learning algorithm:
> Use a platform for 10 years
> Never like, comment, or give it any inkling of your preferences
> Like one random video
> Never log in again10
Manager: Have you fixed the problem?
Dev: What’s the problem?
Manager: We’re not here to discuss problems we’re here to discuss solutions!
Dev2: Do you get 49 errors in the console when you try to compile?
Dev1: (Getting 52 errors) No. Must be an issue with your machine.2
Manager: We do not identify as a tech company so don’t expect tech company salary increases this year
Dev: Well don’t expect me to bring a tech work ethic then
Manager’s PR Description: I made changes relating to a ticket which should work as expected. I also made various other changes as I saw fit, test whatever else I changed too.
Manager: You know you really shouldn’t pay off your mortgage faster than you absolutely have to. It’s the cheapest money you’ll ever get!
Dev: I’d rather work towards being debt free. Besides my RRSP (401k) is already maxed out
Manager: RRSPs are a scam! TFSAs (Roth IRAs) are way better
Dev: My TFSA is maxed out too
Manager: 😡 You still shouldn’t pay off your mortgage!
Manager: Dev, you will submit to my leadership and surrender all common sense to agree with what I say or face consequences.
Dev: Manager, Fuck you!2
Manager: So great news, we will also be building a new app this year!!
Dev: We only have 2 devs and we already struggling to maintain/build our current portfolio of applications. I don’t think we have the resources to support another.
Manager: Nonsense, this is a very small project management app that was requested by the CEO himself!
Dev: …We already have MS project, why can’t they just use that?
Manager: The executive team isn’t interested in learning MS Project, it’s way too complicated. They want us to build an internal version of MS Project one feature at a time so they can pick it up over time instead of getting overwhelmed with learning MS Project all at once. It also needs to have loads of customizable automation features so leadership doesn’t ever have to get “in the weeds” having to work with it. It needs to basically run itself!
Dev: …What about this is small?
Manager: Well that is the requirement.
Manager: Good news everyone, I made a big giant announcement this morning that the app upgrades will be released today!
Dev: They definitely won’t be, we need another 2 weeks minimum. I told you yesterday
Manager: Ok well I already made the announcement that today was the day so too bad for you.
Dev: Doesn’t change the state of things
Manager: 😡 This announcement is supposed to motivate you to work faster! You guys are making me look bad when you don’t support me like this!
Dev: Working as fast as we can, it’s a 2 person dev team for 4 separate applications so it’s quite a bit to get pushed through
Manager: Ok well then stay extra then, we have to get this out asap. Tell your spouses they are not going to be seeing much of you until this work is done. People are starting to ask questions!!!!!
Dev: Not my problem, it’s done when its done. I’m not staying extra.
Might be blowing my cover a little but what are they going to do? Fire me? Good luck getting this out without me. They’ve tried to replace me in the past but the cheapest person they could find was 60k more expensive than me and still couldn’t keep up. Probably they’ll ship the work overseas and the code will die in a dumpster fire and cost them even more. Ah well, just another company that doesn’t deserve code.21
Dev: I think we should send Dev2 for some training and certification
Manager: We do not train people or have them certified. When you train people and especially if you have them certified they always leave the company for better offers so we no longer do that.
Dev: So the plan is to have a the company operated by a bunch of untrained uncertified people?
Manager: 😡 You are being disrespectful again20
Manager: Everyone will be required to switch to Mac in the next couple of months.
Dev: Um, why?
Manager: Macs are more professional and developer focused than windows machines, I read it in an article. Plus they look way nicer.
Dev: Half of the applications we use don’t have a version that works on iOS.
Manager: What? How do you know?
Dev: I have a Mac for occasionally doing some work on the iOS app we support. I ran into that when I was setting it up as a development environment.
Manager: You have a Mac?
Manager: Why? How come you don’t use it for development?
Manager: Hey what was that that you closed on your screen just now?
Dev: That popup? That’s NVIDIA letting me know that a new driver for my GPU is available.
Manager: Isn’t that for video games?
Dev: I mean that’s the reason many people opt into having a GPU but It’s not the on—
Manager: You are NOT allowed to play video games on your work computer!
Dev: This is my personal computer. It’s just an older GPU I popped onto this computer since otherwise it was just sitting in a drawer. My work computer is out of commission.
Manager: Well where is your work computer? How come you are not using it?
Dev: …Because of that blue screen of death issue we talked about yesterday.
Manager: Ok but that doesn’t give you permission to play VIDEO GAMES on your *WORK* computer.
Manager: Hurry up and login, I don’t have all day
Dev: One sec I have to lookup my password for the system
Manager: How can you not remember your password? Everything requires it these days
Dev: I use a different password for each service.
Manager: Wow you really like to overcomplicate things. Just use the same one for everything like I do, it’s way more efficient!
Manager: How come the push to prod didn’t happen?
Dev: We told you at the scrum yesterday. To reiterate, our dev environment was crashing so it’s not safe to push to prod until that is fixed.
Manager: Ok well lets set a goal to fix that and push to prod happens today so that it guaranteed happens.
Dev: That was our goal yesterday and it definitely didn’t happen.
Manager: I AM AWARE OF THAT. The corrective action is that this time compliance with the goal is 100% ABSOLUTELY MANDATORY!!
Dev: We’ll do our best, can’t guarantee anything until we figure out what the nature of what is occurring on dev though.
Manager: NO. I AM THE BOSS. YOU WILL 100% ABSOLUTELY COMPLY WITH THIS. THAT IS AN ORDER. YOU WILL SUCCESSFULLY GET THIS UPDATE OUT TO PROD TODAY. ANYTHING LESS THAN THAT SHALL BE CONSIDERED INSUBORDINATION. I WANT STATUS UPDATES EVERY 15 MINUTES ON WHERE WE ARE AT WITH THIS.
Dev: Can I get you to send me that request in an email?
*Manager leaves the meeting*
Job search is ticking along. It’s tough going though because I currently make ~120k and the best offers I’ve received so far are all ~70k because “You only have 2 years experience so you couldn’t possibly have the skills to be worth 120k. You are are junior level developer and 70K is already overpaying for you. We can pay you more later™. No we will not give you that in writing”. Ah well, the hunt continues.17
Manager: Hey Dev I need to do QA on this PR.
Dev: That PR is not finished yet
Manager: Well do QA now anyway, that way when it is finished it can be merged in right away since QA has already been done on it. It’s a project management technique called “fast-tracking” and it improves efficiency.
**at daily standup
Dev: and along with a push to production that is what I’ll be doing today
Manager: Good good, alright, nice….. ok who else hasn’t gone yet? Dev how about you go next
Dev: …I literally just went
Manager: What? Well what did you say then? Hey when is that push to prod happening? I feel like there should be one happening sometime soon.
Manager: I can’t believe you use Linux, that is such an outdated operating system. You need to get with the times and move to a more modern one like Windows or Mac. Literally NOBODY uses Linux anymore, do you still go to Blockbuster Video too? Ha!
I’m starting to realize that 80% of my job is resisting the urge to punch this guy in the face. Thanks goodness for remote work.35