- What adaptations to classic agile have you seen successful teams make that you think were very smart decisions?
- What sort of project is agile best for? worst for?
- How can agile help to find product-market fit? Or is it completely separate from that?
- What sort of alternative project management approach do you think has failed so often that Agile became necessary as a fundamental rethink of the old way?
Some good adaptations I've seen are largely around handling distributed collaboration, and favoring out-of-band communication practices over regular interruptions. For many teams benefit from replacing a daily standup with a status email. A good compromise is also a daily status email with standups every other day. Having a mid-sprint status meeting and a regular standup time in slack is also a good compromise.
I think engineers in particular get caught up on the rituals they're asked to attend because they view it as invasive. The rituals are just part of it, but in my opinion, the end goal is to provide regular feedback loops for measuring progress and actively communicating. This way, teams can react to changes and blockers before they prevent a group from delivering on its commitments.
Agile is good for teams that are matrixed and highly empowered. If there are strong dependencies on external teams, then it's hard to get out of the proverbial waterfall.
I don't think agile is appropriate for handling questions around product-market fit, but it does help a team to iterate on a product in measured paces in response to the product / sales cycle.
In terms of an alternative project management approach, I think maybe the question needs to be framed differently. Other approaches don't need to fail; agile just needs to be different in a useful way. Agile has a focus on self-organization and measuring progress in short intervals. It suits the increasingly distributed and technological ways in which groups perform work, specifically because it's up to the team to implement the process in a way that works for them.
If upper management doesn't "get" agile, at some layer you have to transition to non-agile. There's an impedance mismatch at that layer. If someone doesn't actively translate things into upper-management terms, they can decide to kill the project, simply because they can't tell what's going on.
I don't know about many companies with 50 or more people where the CEO "does agile" personally, for instance.
I'm going to assume that based on the tone of this site, the author is a very junior developer -- mostly because I think a mid-to-senior software engineer would be brutally embarrassed to publish and share something like this with a wider audience.
Everything there is to be said about agile has been said. Good teams adopt the right take on the process for them. Teams with poor cohesion, who would likely struggle with or without project management, may have some cookie-cutter version of the process forced on them. This is usually a sign of a dysfunctional team -- not necessarily a dysfunctional process.
The author may actually be the bad apple derailing a process that works for the team as a whole. Look at all the complaints! Assuming it's actually a team of seven, you're talking about one seventh of the team probably visibly seething at every standup because they feel put upon by someone forcing a process on them. I imagine that's a lot of tension for the other six people to bear.
Look, I've written plenty of things I'm embarrassed by -- particularly in the beginning of my career. Blog posts and the like are a great way to let off some steam about how unsatisfied you are with your job. But if you're anything like me, you're going to look back at stuff like this and regret how bad your attitude was.
My advice straight to the author: You probably spent more time writing this site than the amount of time you've actually lost to your daily standup. If you're not happy with your job, then quit it.
But I've got to warn you: odds are you're not going to be running the show at the next job either. I can tell from this site that you're just really mad that people are telling you what to do. Answering to someone else is a part of literally any job. It's a pretty fundamental part of participating in society.
You're going to end up being just as miserable wherever you land if you don't take a look in the mirror and invest some time into improving your attitude and focusing on positive, productive interactions with your co-workers.