Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Search - "worse than spaghetti"
-
Part 2 of my boss's stupidity
~FreezeFrame.mp4
*Wait! Wait! Wait! What!?*
*You actually reinstated my class?*
~anotherReverseRecordSound.mp3
-------------
Another late night and another set of pulls I needed to do in order to get caught up with the rest of the world.
I had just finished up dealing with a strange bug and had finally fixed it.
"I need to get caught up with my boss," I thought to myself.
I quickly git pull from my boss and a merge conflict occurs.
"Oh, ok that's fine." I say, "that's nothing too odd."
~FreezeFrame.mp4
"Wait! Wait! Wait! What!?" I shouted inside my head
I couldn't believe what I was seeing, there was a huge chunk of code that was being completely replaced.
"You're actually reinstating my class?" I nearly shouted.
"What!?" my girlfriend shouts from the other room.
"Come here a second, let me show you what it is," I shout back.
She rushes in real quickly, and I point at the code that was being changed.
"Remember that really long ass rant I made about how my boss had completely removed all of my code because he thought it was spaghetti?" I said
"Yeah?" she replied quickly, visually astounded by my excitement.
"He fucking put my class back into the code!!!"
"Wow!... I guess you beat him, huh?" she said.
"You better fucking believe it, but you want to know what's worse?"
She cocked her head sideways, "what?"
"He fucking built it worse than my original! The names don't properly reflect what he is trying do and he's doing a failure job at trying to copy what I had done in my original. He clearly doesn't know about git revert" I said between bouts of laughter.
"This is too good, I'm putting this on devRant!" I said
"I'm not in the least bit surprised that you would." She replied back.
Related Rant:
https://devrant.com/rants/1001888/...undefined beat them at their game don't even call my code shit who's right and who's wrong i know what i said16 -
I made a functional parsing layer for an API that cleans http body json. The functions return insights about the received object and the result of the parse attempt. Then I wrote validation in the controller to determine if we will reject or accept. If we reject, parse and validation information is included on the error response so that the API consumer knows exactly why it was rejected. The code was super simple to read and maintain.
I demoed to the team and there was one hold out that couldn’t understand my decision to separate parse and validate. He decided to rewrite the two layers plus both the controller and service into one spaghetti layer. The team lead avoided conflict at all cost and told me that even though it was far worse code to “give him this”. We still struggle with the spaghetti code he wrote to this day.
When sugar-coating someone’s engineering inadequacies is more important than good engineering I think about quitting. He was literally the only one on the team that didn’t get it.2 -
So I joined this financial institution back in Nov. Selling themselves as looking for a developer to code micro-services for a Spring based project and deploying on Cloud. I packed my stuff, drove and moved to the big city 3500 km away. New start in life I thought!
Turns out that micro-services code is an old outdated 20 year old JBoss code, that was ported over to Spring 10 years ago, then let to rot and fester into a giant undocumented Spaghetti code. Microservices? Forget about that. And whats worse? This code is responsible for processing thousands of transactions every month and is currently deployed in PROD. Now its your responsibility and now you have to get new features complied on the damn thing. Whats even worse? They made 4 replicas of that project with different functionalities and now you're responsible for all. Ma'am, this project needs serious refactoring, if not a total redesign/build. Nope! Not doing this! Now go work at it.
It took me 2-3 months just to wrap my mind around this thing and implement some form of working unit tests. I have to work on all that code base by myself and deliver all by myself! naturally, I was delayed in my delivery but I finally managed to deliver.
Time for relief I thought! I wont be looking at this for a while. So they assign me the next project: Automate environment sync between PROD and QA server that is manually done so far. Easy beans right? And surely enough, the automation process is simple and straightforward...except it isnt! Why? Because I am not allowed access to the user Ids and 3rd party software used in the sync process. Database and Data WareHouse data manipulation part is same story too. I ask for access and I get denied over and over again. I try to think of workarounds and I managed to do two using jenkins pipeline and local scripts. But those processes that need 3rd party software access? I cannot do anything! How am I supposed to automate job schedule import on autosys when I DONT HAVE ACCESS!! But noo! I must think of plan B! There is no plan B! Rather than thinking of workarounds, how about getting your access privileges right and get it right the first time!!
They pay relatively well but damn, you will lose your sanity as a programmer.
God, oh god, please bless me with a better job soon so I can escape this programming hell hole.
I will never work in finance again. I don't recommend it, unless you're on the tail end of your career and you want something stable & don't give a damn about proper software engineering principles anymore.3 -
So... I decided to refactor some of my old code that I wrote exactly 11 months ago, which was one month after starting work..
My first reaction was: "Was I so stupid?"
Second reaction: "why the fuck my supposed 'mentor' allowed me to write this bullshit?"3 -
Swapped workplaces as the previous one wanted to get rid of me, the new one so far feels even worse.
Teammates are too busy to help, codebase makes spaghetti code look like a compliment (and it takes forever to compile) and my manager somehow believes I’m super man, supposed to finish everything faster than speed of light.
I’m miserable.2