Project Fear 🙀️
This could be told as an epic tale of consultancy derring do in the Tolkien style, only with less bad verse, fewer elves, and a minimum of talking trees. But life is short. Here is the précis of a project for a vast multinational that demonstrates that the forces of evil are nothing when compared with the forces of bureacracy and incompetence. Bullet points are better than talking trees, right precious?
- I could not order a corporate laptop until I joined the project.
- Corporate laptops were backed up with a minimum of 2 months to deliver one.
- Access to all corporate resources including the Subversion repository could only be conducted from a corporate laptop.
- The scrum master was an all-caps AGILE SCRUMMASTER and had no truck with small-a agile.
- The scrum master had a corporate laptop where they managed the JIRA board.
- They printed the stories every day, but they were kept in their office.
- The source of truth was JIRA, not the printouts.
- We got to see “the board” on a tiny laptop screen in the morning “stand up” (lengthy status meeting).
- The project manager had “written the first part of the integration” already.
- This did not in any way work.
- Some of the exceptions were unusually long though. Bear in mind I’m used to Spring so my bar for “unusually long” stack traces is pretty stratospheric.
- Aside from the scrum master, only the project manager and a server admin had received corporate laptops and thus had access to the corporate Subversion repository.
- To get the code into the repository it had to be sent via the project manager on a USB stick by copying the entirety of your source code onto it
- I proposed putting diffs onto the USB stick instead of our whole codebase but was declined. Git? Ha ha ha ha…
- Eventually it turned out that they just cut and pasted (with the mouse) our code changes into their “master” copy with the predictable over-writings and omissions.
- They would then push their changes up into Subversion and tell the server admin to cut a build.
- The server admin, on their laptop, would at the command line use Ant to attempt a build and then stare forlornly at the reams of syntax errors until the process repeated.
- I think we managed about one successful build a week. Possibly fewer.
- I referred to the server admin as “Jenkins” for the entire time I was on the project and I don’t think he understood at any point that I didn’t really think that was his name.
- Did I mention that any copying of files off of a corporate laptop was forbidden?
- It was rumoured that staff would automatically be fired without managerial intervention if even an external printer was used without multiple signoffs.
- At one point all the staff from the bodyshop supplementing the project were summoned to a meeting where they were instructed that the next sprint would be dedicated to “improving velocity.”
- This turned out to mean “work extra unpaid hours because the project is running late” (happily I did not work for the bodyshop)
- In the sprint planning meeting the scrum master would demand that we “commit to the sprint.”
- The bodyshop minions would all meekly agree
- I would regularly refuse on the basis that it was clearly impossible to deliver more than the previous sprint when we didn’t even have the corporate laptop access and had never yet met our sprint goals.
- My objection would be noted and we then involuntarily “committed” to the unachievable regular as clockwork.
- After about three months I told the consultancy (supplying me to the project as a Java and Spring expert) that for the first time ever I was giving notice before the end of my contract.
- They told me I’d stuck it out for about twice as long as either of the previous two contractors, thanked me, and asked would I like to do something else instead?
- The new project was delightful and sane and well managed (by the consultancy).
- I heard the corporate laptop turned up a few weeks later.
By far the worst professional shitshow I’ve ever seen and I often think of it. Especially the “Jenkins” gag.
How did it get so bad?
I think the fundamental issues were these:
- The weak project manager didn’t really know what they were doing and would lie rather than admit to a lack of knowledge on any subject including the status of the project itself.
- The scrum master was very green and didn’t really know how an agile (small OR large A) project is supposed to work.
- Because there were no demos or similar checkpoints of our actual achievements nobody higher up the management chain had noticed what a disaster was in progress.
I’ve probably forgotten a few other things about it, and it was a good few years ago now, but … even when the compiler is fighting me and the Heisenbugs are flocking to the light - I can look back and remember those worse times. Things never seem too bad then. Also these days I avoid any project where I won’t be in a position to help steer things before they can go that superluminally off-track.
So. What’s your worst project?
Update: I submitted this post to Hacker News where it got a bit of traction: https://news.ycombinator.com/item?id=32106441.