im 100% in agreement just (15 years experience developing and like 5 as a tech lead) but i think there’s a lot of internal politics that makes this approach risky and you can be fired if the certified bullshit coach has a good ear with the C suit or other decisions makers so im wondering how do you deal with these types of things you touched on this very briefly but i wonder if you want to expand on those types of situations
Answered here: https://neilonsoftware.com/2021/03/05/politics/
Wrapping things up:
Waterfall isn’t bad, just not adapted to software projects.
3 ideas behind agile:
It is best to talk to the customer directly (and not through a product manager) to make sure the project is heading in the right direction:
– Are we doing what he wants?
– Is he going to pay (a lot) for it?
➔ Doing this is how you create value.
Most agile methodologies problem is that they focus more on process than value.
Value is the only relevant metric to define priority.
Complexity isn’t relevant because it is usually just another way to call “fear”.
Each iteration needs to deliver value to the customer.
Fixed iteration time is stupid because it forces to deliver something even if there is no value in it.
The best moment to deliver is as soon as it’s done and tested.
The only deadline that matters is the one imposed by the executive.
If a deadline is too short and not negotiable ➔ Cut corners.
Diminishing risk is impossible. The important thing is to have it under control.
Avoiding WIP is ridiculous because software development is one of the only jobs where it can be handled very well (thanks to source control).
Estimations are USELESS because:
– If the product hasn’t been done before, it is impossible to estimate because of how unpredictable software development is.
– If the product has been done before, we already know the exact time, so there is no need to estimate.
A team doesn’t need most of Scrum’s concepts:
– User stories? ➔ Requirements.
– Backlog? ➔ Good communication and source control.
– Scum master? ➔ Project manager.
– Product owner? ➔ Talking directly to the customer, or a business analyst.
– Estimations? ➔ Deadline.
– Sprints? ➔ Release ASAP.
– It is easiest to make a product with only one customer in mind (Alan Cooper).
– Joey D’s makes the best chicken wings in Atlanta.
– Scrum is very popular because it creates a bunch of jobs, and allows executives to build an empire. A project never needs so many people.
– Make relationships with people downstream (QA and Sales), because they are the ones who will save you if things are heating up.
– Tip for executives: thank your employees with gift cards after each iteration, it will motivate them AF.
I don’t know Neil, I’m not sure I understand your complex analogy with the lemonade and the chicken wings, I’d love to have raw chicken instead of waiting 10 more minutes to get my meal.
Joke aside, I coincidently started studying the Agile Manifesto in class about 2 days after listening to this podcast and I found it hilarious. It’s so vague and idealistic that no human with a brain would disagree with most of it. It’s like saying “eating healthy is good for your body”.
Anyway, thank you for making something applicable out of this 😊
Hey ya, a quick question (warning: might endup with more questions):
So in essence Agile is not for everyone, not every team and definitely not every company. Why is Agile being pushed everywhere nowadays? I don’t understand whats magic dust that makes every non-tech manager/director/CTO get on board.
My response: https://neilonsoftware.com/2021/04/23/why-agile-is-so-popular/