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 - "#agile #software #deadline"
-
I'm coming off a lengthy staff augmentation assignment awful enough that I feel like I need to be rehabilitated to convince myself that I even want to be a software developer.
They needed someone who does .NET. It turns out what they meant was someone to copy and paste massive amounts of code that their EA calls a "framework." Just copy and paste this entire repo, make a whole ton of tweaks that for whatever reason never make their way back into the "template," and then make a few edits for some specific functionality. And then repeat. And repeat. Over a dozen times.
The code is unbelievable. Everything is stacked into giant classes that inherit from each other. There's no dependency inversion. The classes have default constructors with a comment "for unit testing" and then the "real" code uses a different one.
It's full of projects, classes, and methods with weird names that don't do anything. The class and method names sound like they mean something but don't. So after a dozen times I tried to refactor, and the EA threw a hissy fit. Deleting dead code, reducing three levels of inheritance to a simple class, and renaming stuff to indicate what it does are all violations of "standards." I had to go back to the template and start over.
This guy actually recorded a video of himself giving developers instructions on how to copy and paste his awful code.
Then he randomly invents new "standards." A class that reads messages from a queue and processes them shouldn't process them anymore. It should read them and put them in another queue, and then we add more complication by reading from that queue. The reason? We might want to use the original queue for something else one day. I'm pretty sure rewriting working code to meet requirements no one has is as close as you can get to the opposite of Agile.
I fixed some major bugs during my refactor, and missed one the second time after I started over. So stuff actually broke in production because I took points off the board and "fixed" what worked to add back in dead code, variables that aren't used, etc.
In the process, I asked the EA how he wanted me to do this stuff, because I know that he makes up "standards" on the fly and whatever I do may or may not be what he was imagining. We had a tight deadline and I didn't really have time to guess, read his mind, get it wrong, and start over. So we scheduled an hour for him to show me what he wanted.
He said it would take fifteen minutes. He used the first fifteen insisting that he would not explain what he wanted, and besides he didn't remember how all of the code he wrote worked anyway so I would just have to spend more time studying his masterpiece and stepping through it in the debugger.
Being accountable to my team, I insisted that we needed to spend the scheduled hour on him actually explaining what he wanted. He started yelling and hung up. I had to explain to management that I could figure out how to make his "framework" work, but it would take longer and there was no guarantee that when it was done it would magically converge on whatever he was imagining. We totally blew that deadline.
When the .NET work was done, I got sucked into another part of the same project where they were writing massive 500 line SQL stored procedures that no one could understand. They would write a dozen before sending any to QA, then find out that there was a scenario or two not accounted for, and rewrite them all. And repeat. And repeat. Eventually it consisted of, one again, copying and pasting existing procedures into new ones.
At one point one dev asked me to help him test his procedure. I said sure, tell me the scenarios for which I needed to test. He didn't know. My question was the equivalent of asking, "Tell me what you think your code does," and he couldn't answer it. If the guy who wrote it doesn't know what it does right after he wrote it and you certainly can't tell by reading it, and there's dozens of these procedures, all the same but slightly different, how is anyone ever going to read them in a month or a year? What happens when someone needs to change them? What happens when someone finds another defect, and there are going to be a ton of them?
It's a nightmare. Why interview me with all sorts of questions about my dev skills if the plan is to have me copy and paste stuff and carefully avoid applying anything that I know?
The people are all nice except for their evil XEB (Xenophobe Expert Beginner) EA who has no business writing a line of code, ever, and certainly shouldn't be reviewing it.
I've tried to keep my sanity by answering stackoverflow questions once in a while and sometimes turning evil things I was forced to do into constructive blog posts to which I cannot link to preserve my anonymity. I feel like I've taken a six-month detour from software development to shovel crap. Never again. Lesson learned. Next time they're not interviewing me. I'm interviewing them. I'm a professional.9 -
Client : We want to develop this particular software. While developing it, we will be following Agile methodology.
Developers: Sure.
After developer achieves few features and decides to give 1st Demo of the software to the client.
Client : Wtf is this? This is an incomplete software, there are bugs in it.
Developer : Yes, you point that out to me and I will solve them.
Client: What do you mean point them out for you l, couldn't you do it yourself?
Developer: As a standard method, we often do unit tests, but we are not testers and with a strict deadline to match, we are more on the core implementation then checking again and again for minor bugs.
Client : I thought it would be a full proof software without any bugs in the 1st demo.
Developer : Software development is a process. It's not straightforward, hence you only mentioned at the initial, it's agile.
Client : If that's so, let's make it not agile and make you rot in hell for the next few fays. Now you next time show me a demo with no bugs, great complicated features and we will not mention you our expectations, predict them by yourselves, and most importantly, here's an impractical strict deadline.4 -
This is PART 1/2 of a series of rants over the course of a software engineering class years ago.
We were four team members, two had never failed a class, I’ll refer to them as MT and FT, male and female top students, respectively, and an older student with some real world experience who I’ll refer to as SR.
Rant 1: As I was familiar with the agile methodologies I became the Scrum Master and was set with the task of explaining it to the team members, SR showed up late and nobody seemed interested in learning new methodology. At this point I knew we'd have trouble as a team.
Rant 2: FT made up her project proposal without informing anybody, which required a real client/product owner. We only figured it out after her proposal was accepted as the project, so we ended up working with fake requirements.
Rant 3: This one is partly my fault. I researched first and then worked, which meant I was the last to turn up my work. In one activity MT pressures me and I agree to a deadline so everyone can send their work to the teacher in a timely manner. Since I was the last to finish, I was also asked to give the doc some formatting, which I did in a hurry so it wasn't the best.
The next day MT and FT start complaining about me, saying I took too long and that they expect me to do better next time or else. At the same time they were stressed and in a hurry because we had to explain the project outline in front of the class and they didn't study.
Turns out copying and pasting all your work in less than an hour means you don’t learn anything. FT actually asked me for help days before and I sent her a website in English, which she wasn't very good at, so she just ran it through Google Translate and called it a day.
Later FT called me rude for interrupting MT in the presentation, which I did because he started making up stuff about the project.
Rant 4: SR expressed his dislike for school through profanity in variable names and commit messages. This caused MT and FT to dislike him. I thought it was immature but if anything it should’ve been reported to the teacher and move on.
Rant 5: I was stuck trying to get the REST API working for the project Admittedly this was my fault, too, because I was pushing for the usage of things nobody was familiar with for the sake of learning. This coupled with SR’s profanity led to drama and the progress was dropped, starting over from scratch.
At this point I stepped down from the Scrum Master role as nobody seemed to listen anymore.4 -
I'm crying-
And idk if I'm crying from it being so funny or so sad...
Forwarded to me by my boss, found somewhere on the internet, creds to who made it1