Scrum means more meetings. Lots more. Recurring meetings. A recurring meeting happens because it’s scheduled, not because there’s a need. And it’s never canceled just because there’s no need for it.
All meetings are interruptions. Interruptions break flow and flow is usually gone for the day. In jobs where I’ve done my best work we had one meeting per week. That is not a typo.
The primary goal of software management should be the enabling of flow, which is equivalent to the minimization of interruptions. That means minimal meetings and quiet workplaces, preferably single-occupancy offices. Not cubicles. That means no foosball tables and enforced quiet. Think library.
If you think software development is a social activity then you’ve lost your way somewhere. “Team” is the wrong metaphor, if developers are working on the same code files then something is wrong. Division of tasks into components and ownership of these components is what works; more junior developers own smaller components.
When I worked at a place that adopted scrum it meant I had to arrive at 8:30, which meant driving in rush hour traffic, which increased my commute from 30 minutes to 90 and I arrived weary and in a foul mood. And the meeting was never anything but “I’m working on the same thing I was working on yesterday” or PMs reciting buzzwords to put on an appearance of being engaged.
It was a total fucking waste of time.
Calling it a new name (there’s a lot of that shit these days, a LOT) didn’t change the fact that it was just a status update, which heretofore I’d always done in email.
That was my last onsite gig, last in the sense of “most recent” and in the sense of “never again.”
I only work from home now, I am on distributed teams and the division of tasks is very large; on my last development gig I did the entire back end: four servers, database and schema, and IIS, so I handled site emergencies either on IIS or dealing with the ISP.
I absolutely will not work in any agile/scrum/TDD environment.
The abandonment of concentration and focus are simply unacceptable; what’s truly alarming is the degradation of nomenclature. Refactoring, stories, technical debt … none of these have anything like precise meanings and my cockatoo makes more sense. I don’t know anyone over 35 who’s happy working in software unless he’s freelancing like me. Onsite work is a nightmare of jargon and interruptions.
A friend back in the USA does real estate and a lot of her clients are at Microsoft (I worked there ten years between 1989–2009) and she said nobody likes it anymore. Back in 1989 it was fantastic.
There are going to be come companies that ignore these fads, and yes that is exactly what they are, and these companies are going to succeed where the focus-crushing ones fail.