Agile sucks for software development and I’m tired of pretending it doesn’t
Agile extremists love to dance around the broken record of: “but Agile is what ‘high-performing’ development teams use”.
Is it?
According to who?
What study?
What was the sample size?
How long was the study run?
What caliber of companies were included in the study?
Most importantly, what was the percentage increase in deliverability/speed/efficiency/developer happiness/customer happiness when using agile vs without?
These are questions the agile overlords either don’t know or refuse to provide the answer to.
Even if said studies exist (hint: quality ones don’t), those studies would likely have been conducted by statisticians who have never worked on a development team, thus making their study unqualified right out of the gate.
I don’t know what your definition of high-performance is but my definition would be along the lines of “delivering high-quality software quickly and efficiently”.
Now please explain to me what part about spending half the day in meetings rather than writing code is actually “high-performing”. There is a reason Elon Musk just fired half of Twitter. Sitting around in meetings all day [pretending it’s important](https://www.linkedin.com/pulse/sorry-your-job-doesnt-matter-what-matters-wayne-k-spear/) does not provide value. Clearly Elon is calling the bluff of all of the corporate shills who managed to convince company leaders that these meetings truly are important by firing everyone who sits around all day doing something other than writing code. He clearly put 44 billion dollars where his mouth is and told you that your pointless meetings don’t matter and they don’t need it to build quality software.
My previous company spent 1 hour every Wednesday talking about whatever urgent items needed to be addressed and then we peaced out for the rest of the week unless anything came up (in which case we would reach out to the person ad-hoc in Slack, rather than scheduling un-needed recurring weekly meetings)
My current company spends 4 out of 8 hours every day in meetings. These meetings include:
- Stand up - Sprint planning - Retrospective - Refinement - probably 5 others that I’m forgetting
I’m not an agile extremist so you’ll have to excuse me if I’ve gotten any of the their ridiculous verbiage wrong.
But let’s cut to the chase.
Someone explain to me:
Where within the definition of “high-performance” does taking 2 weeks and 4 meetings with 10 developers on each call just to deliver a simple list-filter feature fit in?
I ask because such a feature would have taken my previous non-agile team not more than 1 meeting and not more than 1 day to complete.
If team A takes 2 weeks and 4 meetings to deliver said feature and team B takes 1 day and 1 meetings to deliver said feature then simply put, team A needs to sit down and shut up as they hold no ground to talk about “high-performance”.
The time-tested adage of “put your money where your mouth is” holds true no matter how many agile verbiages you want to throw at it or how many agile-non-believers you scream obscenities in the face of.
Below is an open challenge to any person or organization:
Have your agile team deliver high-quality software more quickly and efficiently than my non-agile team and I will print out this post and eat it on camera.
Until then: sit down and shut up.
92 comments
[ 3.3 ms ] story [ 168 ms ] threadIncompetence? Vindictiveness? A huge bag of weed?
> Agile team ... non-agile team
What is non-agile team, Waterfall? You sre the one demanding spesific information and studies, so explain clearly, and be spesific, what are you even advocating?
One of the issues I have with how agile is all things to all people is that nobody's trying new things. They're trying to fit what they're already doing inside the definition of agile instead.
This is agile.
> My current company spends 4 out of 8 hours every day in meetings. These meetings include: - Stand up - Sprint planning - Retrospective - Refinement - probably 5 others that I’m forgetting
This is simply dysfunction.
You're contrasting process heavy vs process light, not agile vs. an alternative methodology.
When people contrast agile against something, it's typically the waterfall method of design. And you'd know that if you saw it. (Interviews, design docs, stakeholder sign offs, etc. before any code happens.)
Different projects/tasks require different solutions and I'm tired of people pretending they don't
I hate to pull a "no true scottsman", but absolutely nothing about that is being agile. The manifesto says nothing about cargo culting various ceremonies, in fact quite the opposite.
It’s a really hard balance to get right and Agile easily ends up turning into a lot of pointless meetings teams feel like they need to have because that’s part of the manifesto they prescribed too.
I’ve also found lot of counselling and explaining starts happening when sprints aren’t going well or people become fatigued.
We could argue it’s not an Agile problem, like everything it’s susceptible to a lot of problems which we like to gloss over because it’s convenient to do so and those who advocate for agile haven’t bothered to revise and improve on the original manifesto to address these weaknesses.
the Agile manifesto is a bit like a bible in that sense.
Anyhow, as a developer I'm not a fan. I've seen the results of agile on the code and it's not pretty. Say nothing of the added stress on developers. Managers like to think that software development is linear. A developer should be able to get X amount of work done over a period of time. But as a developer we know that that's not always the case.
I think ideally, agile should be where you put outcome over output, that's it. And I think that's the correct way of thinking when it comes to wanting to deliver the best product.
Here's your problem. The rest is just measuring the symptoms and attaching labels to them, but the disease itself is clear. It's not about "agile". I don't know what is called "agile" in your organization, but whatever it is, the theory is not the problem. The implementation you have is.
agile is for people who prefer 'classical music' working style, but want to simulate start-up mentality
It's on the so-called Product Owner to prioritize what's next sprint, projections, etc, and a Scrum Master is supposed to help protect you from distractions.
I've done this style of agile before, and it's great. However the issue is many mgmt types still only caring about when "all of this will be done?", and also teams and people which can't think incrementally.
I think you might be getting pressure to change the way you work by folks that don't perform. That sucks; I've been there. Hopefully the pressure turns into nothing, because that's generally been my experience. Precisely because the folks applying the pressure don't get things done, and that includes changing the way you work.
It’s not that you can’t learn from previous experience, but we have an unhealthy tendency of looking for a one-size-fits-all solution that comes with a bunch of fashionable names attached in this industry.
This doesn't have anything to do with agile. You can run "agile" with as little as an hour of meetings a week if you want. Planning, retro, refinement in one weekly, async standup in Slack. You can bring standups in person, have them daily or less frequently, adjust the frequency, change your sprints from 1 to 2 weeks.
Even the heaviest weight version of this I can imagine (daily 30 min standups, 1 hour planning, 30 min retro, weekly sprints) adds up to 4 hours total for the week. So what you're describing is 80% something beyond that.
> taking 2 weeks and 4 meetings with 10 developers on each call just to deliver a simple list-filter feature fit in?
This sounds like you've moved from smaller company to bigger company and are noticing things move slower, though correct me if I'm wrong.
Either way, these are the questions: Why does the feature actually take two weeks to build? Are there more factors beyond the team? Larger scale? More testing / QA needed than pushing out to prod? Just plain worse developers? Bad PR practices that delay the feature? These factors again are nothing to do with "agile".
Another person asked this well, but really you've offered no notes on what your old team did differently that was not "agile". What's the alternative that people are missing?
Pivotal Labs, well known for "doing Agile right," spends the entire Friday doing no work every week.
And the big names in tech also purport to use agile and spend maybe an hour every Friday or Monday doing "agile" type meetings. Which are we talking about here?
If it helps, add to my above post that I'm using "agile" to mean the philosophy of defined sprints with stand ups, planning, and retrospectives to help execute a larger, changing roadmap. There are many many other rules people can choose to add, but my experience across many companies is that this is the shared core in practicality.
When people say agile, 95%+ of the time they don't mean whatever Pivotal Labs is using for a standard. I've practiced "agile development" at F10, big tech, and under 250 person startups, and no one has ever referenced a strict spec definition like that, not even the F10 which basically said "here's some detailed guidelines some use, take what works". So what's the relevance of this strict definition?
To be clear, that's not to say that other meetings can't be used, but that they are not part of the "agile" process. I can easily imagine a dev ending up with 4 hours a day, but that's more related to company size and process. Things like design reviews, meeting with other teams, not being able to quickly find the right point of contact, using meetings to find out you have the wrong person, not defining clear agendas, inviting too many people to meetings, and so on. I'd bet some of these are affecting OP, but again, this has nothing to do with the style of development planning/process.
> How does that get to 4 hours a day
It was way more productive than with my second team where we used one hour every two week for the retro. In big company, the time you actually spend on understanding how everything work is never really lost.
I feel the same may be true w/Agile.
Agile can be done well. I've seen it, and it was amazing. I've also seen "agile" implemented where the number of meetings (and the number of forms) keep going up. But the existence of the fake does not disprove the existence of the real. It just means that you have to be very wary of anything bearing the name.
This is similar to the lean approach in manufacturing that has been very popular over the past ~20 years.
> Make changes if it isn't working.
If measuring performance is so difficult, then how do you know if it's working or not?
I personally dislike when it's made significantly more complex. High-performing teams can work in a standard Scrum framework or they can customize agile to suite their needs.
If you're spending hours a day in meetings, you're not using the framework correctly. In a fell-functioning team, you'll spend 5-10min max doing some form of standup, in some teams this is even async so no daily meeting. That leaves one planning meeting every two weeks and one review meeting to see how you've done.
Does not sound like agile. Standup is a 15 minute affair, planning & retrospective a once every 2-week (however long your sprints are) event 1-2 hours long. That's all. Roughly 4 hours for every 80 hours of work.
Whatever you have going on there is probably a wild detour off SCRUM inflicted by agile consultants, which seems to be very common these days.
And actually make change and find what works.