
Reddit/Unsplash
Nobody likes the coworker who makes extra work for everyone. Especially if it happens over and over again.
If you were stuck in an endless loop of proving your coworker wrong, would you eventually come up with a way to make it stop, or would the loop continue until you quit?
In this story, a developer gets stuck in a development nightmare… like if Bill Murray did coding.
Let’s see how he gets out of this loop.
Malicious Groundhog Day Precompliance
As anybody who has been around any serious development at any serious company knows, we all participate in helping to assure the quality of the final product.
Except, of course, a man I will hereafter refer to as Chuck, because, screw you, Chuck.
Here’s what’s up with Chuck…
Chuck was supposed to be a designer who could take problem descriptions and design hardware blocks for integrated circuits that would perform what is known as digital signal processing.
But Chuck was really one of those my-crap-never-stinks kind of people who always blamed others for his plethora of failings.
I have never technically been part of a Q/A department, but I do have a very particular set of skills, skills I have acquired over a very long career, skills that make me a nightmare for people like Chuck.
Look out Chuck, Liam Neeson is coming for ya.
In particular, I am skilled at taking designs that will eventually become integrated circuits for sale to the general public, and emulating them in real time.
So I build tools (digital hardware, analog hardware, software, scripts, printed circuit boards, whatever it takes) that are typically used by others, so they can write software for, and also validate, chips that do not yet exist.
Since I built the tools, I am always right in the middle of triage for bugs.
So OP’s kind of an exterminator. Something tells me Chuck is a magnet for bugs.
Is it digital? Analog? Software? Lack of fidelity in my own emulator?
It’s not typically my job to find bugs, but, once they are found, it is my job, as a systems engineer, to do root cause analysis to figure out who isn’t meeting spec, and prove it if they disagree (and, of course, to fix it if it’s my own bug).
Kill those bugs, OP. Unless Chuck gets in the way?
I had a long history with Chuck, starting with his congenital inability to run a five minute simulation smoke test of his changes before tossing them over the wall for me to start the sixteen hour build process of the next version of the emulator.
At the point of this story, we had, to our chagrin, shipped a chip where one of the hardware blocks that Chuck designed was not working.
Ugh, c’mon Chuck.
Fortunately, this did not affect many customers, but we needed to fix it, and since it was absolutely critical that it be fixed (in fact, its failure was the primary reason for a new, expensive, chip revision)…
And since the validation department had not previously caught the failures (to be fair, this was partly due to Chuck’s song-and-dance about how some things they found were not failures that could occur in the field)…
And since, by this point, the emulator was proven and had been working fine for many months (freeing up some of my time), yours truly was tasked with torturing the next revision of Chuck’s bad block.
Will Chuck cooperate with OP’s findings?
Being a systems engineer, I had looked at Chuck’s design, found it fundamentally flawed, and had given him information (advice, links to whitepapers, etc.) about how he should rearchitect it.
Of course, all that was ignored.
In retrospect, there were good reasons that Chuck was being given a lot of rope. Rather than placing him on a performance improvement plan, management was undoubtedly simply grooming him for the next round of layoffs.
But not understanding this, yet implicitly understanding that my primary task at the moment was to continually prove that Chuck’s bad design was, in fact, bad, so that we did not ship yet another flawed chip, my life became a Groundhog-Day style limbo, for weeks.
This sounds very frustrating.
I was spending a couple of days building a new version of code supplied by Chuck, and taking it to the lab and watching it fail in under five minutes, and then engaging in interminable arguments about whether performance in the emulator in the lab faithfully reflected what would happen with the real chip in the real world.
One of Chuck’s go-to forms of deflection was to ask, in the almost daily 20-person meetings dealing with this debacle and its hit on the schedule, whether I had tried.
How will OP make it stop?
This led to protracted arguments about the relevance of the requested test, and sometimes to wasted time actually performing the test, and this went on for, literally, weeks.
Chuck could literally come up with half a dozen of these inane questions in every single meeting.
Finally, there was one time when I was able to take a fresh build of the emulator to the lab five glorious hours before the next scheduled finger pointing meeting.
He came up with a different approach.
So, after watching the design fall over and twitch helplessly on the lab bench in under five minutes (as usual), I decided that my next task was to think long and hard about WWCA (What would Chuck ask?).
Over the course of the next several hours, I came up with a long list of potential red herrings, wrote them down, performed the requisite useless tests, and wrote down the results.
Chuck’s face at the next meeting was priceless.
Here’s how the meeting went…
“Did you try xxx, Zephen?”
“Why, yes, Chuck, yes I did. Here’s what happened…”
“But you should have tried yyy, too!”
“I did that, and this happened…”
OP came armed and ready to get out of this endless loop.
This went on for probably ten questions, each one stupider than the last, before he gave up and said he would go look at my data.
No arguments, no raised voices, no pushback.
Just twenty people, all tired of the Groundhog Day loop, all watching Chuck flounder with ever-more-ludicrous manufactured scenarios.
Chuck was gone two days later, the block was handed to another designer who rearchitected it according to sound principles, and, until now with this retelling, I never relived Groundhog Day again.
Loop, ended. OP: 1 Chuck: 0
What do the comments on Reddit say about this repetitive task?
This poster suggests Chuck might come by it naturally.
This person makes us chuckle…
Someone else says, he shoulda been Chucked long ago.
Another person has a solid troubleshooting solution.
Anything different is good.
Thought that was satisfying? Check out what this employee did when their manager refused to pay for their time while they were traveling for business.