News for hackers. Stuff that matters.
Re:Scrum disempowers developers by mmusson on Wednesday May 30, 2018 @08:59AM (#17187298)
My experience is that a good team does a good job. A bad team doesn’t.

I think the focus on methodologies is to get a good result from an uneven team. Companies desperately want to treat programmers like standardized workers that can be mixed and matched as needed. The siren song of the methodology is that maybe it can achieve that goal. I have never seen this work in practice.

There are no quick fixes. People can improve but it takes time, dedication, and support.

Re:Scrum disempowers developers by vannevar on Wednesday May 30, 2018 @10:01AM (#17187682)
My experience is that a good team does a good job. A bad team doesn’t.

Of course that's your experience. If you judge teams based on outcomes, then you're going to conclude that teams that succeed are good, and teams that don't must be bad. Unfortunately that offers no guidance in how to become a good team. The goal of software management as a practice is to find patterns of positive behavior that make good teams. Agile, in general, is a collection of those patterns.

Re:Scrum disempowers developers by tonyarkles on Wednesday May 30, 2018 @10:44AM (#17188036)
I accept that he's polarizing to some, but Jocko Willinck's book "Extreme Ownership" has some interesting stories on this topic. One of them is at Navy Seal training camp, where there's 6 teams involved in a multi-stage boat race exercise. Half-way through, team 2 is destroying everyone and team 6 is losing pretty badly. So, to teach a leadership lesson, the instructors decide to switch the leaders from teams 2 and 6.

At the start, team 2 continues doing awesome, and while team 6 doesn't win, they improve. Next round Team 2 isn't doing quite as well, but still good. Team 6 has improved a bunch. After a couple of rounds, team 2 is falling apart and team 6 is now winning (or 2nd place, I forget).

My experience, admittedly anecdata, is that great teams perform well when they're in an environment where they're allowed to succeed. I've worked with great teams who did terrible work, and it was pretty much always due to a bad environment (e.g. an owner who would redirect their efforts every few days, so no feature ever got to done-done). I've also seen (but not personally led) teams that I had originally somewhat written off, who under good leadership managed to do some pretty damned impressive work.

And don't get me wrong, I'm not devaluing the potential contribution from a single amazing person, or a team full of amazing people. My clients hire me because I have a (locally) rare set of skills that their team doesn't have, and help them get over hurdles that their team can't (currently) tackle on their own. But if you take a great set of individuals and put them together in a shitty environment with a shitty leader, you're going to get what you get.

Re:Scrum disempowers developers by PeterisP on Wednesday May 30, 2018 @10:20AM (#17187839)
The observation is more about people. You take random people from good teams, mix em up and put them in a very different environment, they're still going to do a good job.

What if there is no reasonable and reliable way to become a good team, and the only way to go from a bad team to a good team is to replace most of the team?

Re:Scrum disempowers developers by GFischer on Wednesday May 30, 2018 @10:48AM (#17188074)
Look at sports... I've seen both cases, players that are good within one system horribly underperforming in others, and players that don't look that great meshing with other castouts and creating a surprisingly good team.

I suspect the same can happen with software developers.

Of course, there are people that will be bad anywhere and top guys that will be great anywhere.

Re:Scrum disempowers developers by lmm on Wednesday May 30, 2018 @11:52AM (#17188715)
Then it would be good to figure that out, measure that, and then at least we can put the best people on the most important projects. It's perfectly possible to imagine a world where e.g. developer IQ was the only thing that mattered and the quality of software that got produced was simply proportional to the average IQ of the developers who worked on it, sure.

I don't think that's the world we live in though. I've seen smart, sociable, effective developers fail in misorganised teams, and I've seen teams of ordinary people produce very good software by getting their processes right.

Re:Scrum disempowers developers by vannevar on Wednesday May 30, 2018 @10:28AM (#17187903)
How do you know they are coming from "good" teams? And if so, isn't it reasonable to suppose that they might carry over good practices in their new environment?

I don't doubt that there are bad developers---I've definitely encountered them. But software development is a team sport, and it makes no more sense to just "recruit good people and leave them alone" in software than it would to do the same in basketball. Great teams have both talented people and winning strategy.

Re:Scrum disempowers developers by Retric on Wednesday May 30, 2018 @10:34AM (#17187952)
Because people regularly do "recruit good people and leave them alone". At my first job I was the only developer working on the project and I rarely spoke with my boss. He came back from a month long vacation and I had not noticed he was gone.

That's surprisingly common across the field. Most developers work on small teams doing small but often very long lived projects. Code staying in production for 30 years is surprisingly common outside of SV.

Re:Scrum disempowers developers by jon-wood on Wednesday May 30, 2018 @10:51AM (#17188108)
Those people, in those positions, probably don't need much in the way of process. If you really can just sit down with the owner of the business, hash things out with them, and then go build something that does what they need then you're golden. And guess what, you're probably doing agile without even knowing it, because agile is attempting to reproduce that in organisations where you can't just put a single developer and a the CEO in a room and expect that to happen.
Re:Scrum disempowers developers by vannevar on Wednesday May 30, 2018 @11:26AM (#17188432)
They also regularly "recruit good people and leave them alone" and they fail. And then we look on those people as "bad" people. Which was my original point above.
Re:Scrum disempowers developers by tonyarkles on Wednesday May 30, 2018 @10:48AM (#17188075)
I wrote more in my sibling comment. I generally agree that there aren't any strict guidelines for becoming a good team, but I disagree that replacing most of the team is the solution in any but the most extreme cases. I would venture a guess that, most of the time, there's one person to remove and one person to add: a new leader. If that doesn't solve the problem, potentially looking at developer contributions and seeing if there's someone who isn't pulling their weight and has no interest in learning how to. (I've only encountered these types of people a handful of times in my career. Most of the time it was shoddy leadership)
Re:Scrum disempowers developers by kevstev on Wednesday May 30, 2018 @10:10AM (#17187744)
My quip on scrum/agile is that it "ensures mediocre results from mediocre teams." Its just a methodology in the end. It can help keep those that tend to have wandering minds focused, but for high performing teams the overhead slows them down.

The assumption of a standard programmer is just never a reality as well. I actually saw a startup try to go full religious agile and only hire "full stack" developers to try to homogenize them so that they would fit the agile mold better. It didn't seem to work very well, people are people and naturally gravitate towards data modeling, or UI, etc.

Re:Scrum disempowers developers by dagw on Wednesday May 30, 2018 @10:25AM (#17187889)
My quip on scrum/agile is that it "ensures mediocre results from mediocre teams."

And honestly that is all that most companies actually want/need. Most teams are mediocre and most projects only need a mediocre result. Getting something as good as a mediocre results out of your mediocre teams would be a massive improvement for a lot of place.

Re:Scrum disempowers developers by jon-wood on Wednesday May 30, 2018 @10:48AM (#17188081)
I would rephrase it from "mediocre results" to "good enough results" - not everything needs to be a work of art. Especially in the startup world, where there's never enough people to go round, there's a huge value in knowing when you've done enough that the project you're working on is no longer the thing that'll deliver the most value.

What agile does when executed right is to fully embrace that, and wrap it in a process that ensures that when you reach that point you're able to finish the current iteration, ship what you've got, and move on leaving things in a good enough state. For me that's the core of agile, and in my experience at least you can't pull that off with a mediocre team. You need a team where at least some members have the experience and the pragmatism to know the difference between delivering a minimum viable product and cutting corners in a way that'll hurt in the future.

Re:Scrum disempowers developers by yebyen on Wednesday May 30, 2018 @05:14PM (#17191863)
When I learned about the concept of "just barely good enough" I was thrilled by it. Lots of people been using the expression "good enough" and to me it feels like a defeatist idea. "They did their best! It's good enough, isn't it?"

http://agilemodeling.com/essays/barelyGoodEnough.html

Given the constraints of the estimate we've made for a story that could really go much longer, except that we've only allocated two days... I think the problem you're hinting at is that different people have different ideas of what the Minimum Viable Product should look like.

Accordingly, on my team where we're all under-trained with respect to Project Management and mostly just making this shit up as we go along, we've identified several other points on the curve.

It's suggested that one should make some nominal efforts to identify, and stop for a sniff along the way to JBGE:

"that's definitely not good enough, try again"

"I'll know it when I see it, but I'm sure that isn't it"

"kinda-sorta good enough"

"that's nearly good enough, except for this one thing..."

Identifying some of these points along the way (and making sure you notice when you've arrived at them) in my opinion is a great way to help ensure you're not actually aiming for points somewhere deep on the wrong side of the curve.

The mediocre team also may have trouble getting to Just Barely Good Enough because of overshooting. But in my experience that's usually not the problem. Nobody is working far past JBGE into the wee hours of the "OMG this is too much, I love it but how long did it actually take?"

If anything, the feature has to be shelved or scrapped, or handed off to someone else, because it's taking too long due to an error in calculation of trajectory. Spending too much time on the wrong things. Incremental progress is the goal, and perfect is the mortal enemy of good.

Re:Scrum disempowers developers by s73v3r_ on Wednesday May 30, 2018 @01:42PM (#17189786)
To be honest, that wouldn't be a problem if more companies were up front about it. But every company out there has this idea that they have to hire "the best".
Re:Scrum disempowers developers by dagw on Wednesday May 30, 2018 @05:31PM (#17192017)
every company out there has this idea that they have to hire "the best".

Maybe in Silicone Valley, but most companies are happy if they can just find a programmer that knows how to program.

Re:Scrum disempowers developers by srtjstjsj on Wednesday May 30, 2018 @11:44AM (#17188636)
"Agile" is completely independent concept from "full stack" or "homogenized" development.
Re:Scrum disempowers developers by kevstev on Monday June 04, 2018 @01:35PM (#17230099)
This is true. With the emphasis that Agile puts on "blockers" though it becomes apparent that the typical model of having a simple person own a component with maybe a backup person or two is problematic. "Only Amy knows that code, and she is working on X which is also critical" is one of the more frequent types of issues that comes up in standups.

To combat this, this individual decided to try to reduce the specialization as much as possible. Everyone would do everything was the thought process, so no one could ever hold anything up.

This was a non-technical founder of a now dead startup, but it died of the much more typical problem of market fit- they did launch, and the site worked. It may be interesting to mention he was also using entirely offshore development teams.

Re:Scrum disempowers developers by rwmj on Wednesday May 30, 2018 @11:41AM (#17188599)
My experience is that a good team does a good job. A bad team doesn’t.

My experience is that sprints interrupt my workflow to such an extent that I can no longer get anything done. In other words, they make a good team bad.

Re:Scrum disempowers developers by simonswords82 on Wednesday May 30, 2018 @12:21PM (#17189008)
How so? I'd be keen to hear just in case I'm unwittingly inflicting similar pain on my developers.
Re:Scrum disempowers developers by rwmj on Wednesday May 30, 2018 @12:38PM (#17189170)
Perhaps it's just me, but I need long periods uninterrupted to work. It's not just the regular status meetings, but other meetings which break up the day to an extent that I can no longer get that.
Re:Scrum disempowers developers by s73v3r_ on Wednesday May 30, 2018 @01:39PM (#17189761)
Yeah, but that's not a scrum thing. Most days, I have the daily stand up (which occurs right after I get to work), and that's it. The one day where we do all the grooming and retro and demo every two weeks is more or less lost, but that's not much of a problem.
Re:Scrum disempowers developers by AndrewSChapman on Wednesday May 30, 2018 @06:03PM (#17192294)
What about code reviews?
Re:Scrum disempowers developers by s73v3r_ on Wednesday May 30, 2018 @06:13PM (#17192364)
Code reviews are very important, so I don't complain about time spent doing them.
Re:Scrum disempowers developers by molteanu on Wednesday May 30, 2018 @11:59AM (#17188791)
Agreed. I've seen a lot of "good practices, methodologies, processes, etc", but none of them even tries to address what is, often times, the most critical issue: a team of good software engineers. Instead of endless meetings and bullet points about how to handle a Jira ticket, maybe focus on how to handle pointers?!. I've really had colleagues who don't know how to program in C and when asked about it said "I don't even want to learn it, we have all this tools and methods", but their title says "C embedded engineer" or thereabout.

I can also see the business point of view in this. You want switchable puzzle pieces. Take this developer from this project and move him to that project. This developer knows X, Y, Z and that project needs X, Y and Z. So it's all nice and well. Only it doesn't seem to work in practice.

Re:Scrum disempowers developers by some_account on Wednesday May 30, 2018 @09:41AM (#17187534)
I really dislike agile. A product owner asked me once if I get some benefit from them...and no, I don't. Thry get a lot of benefit from me sharing what I'm doing because they can then keep track of it and communicate it to other people, but I don't get any benefit personally.

I want to be the guy who talks to the rest of the employees, implements things and get direct feedback from them. I dont want anyone in the middle of that. It just complicates everything and makes me less connected and known in the company.

Re:Scrum disempowers developers by jon-wood on Wednesday May 30, 2018 @10:21AM (#17187847)
For a long time I felt that way as well. There are days when I still do, and this is from my current perspective as a tech lead who spends ~50% of their time in meetings with other parts of the company.

Sadly once a team scales up past a certain size its not practical to have developers also going out, finding out what people want built, and handling all the feedback on that. You need someone (or a team of someones) gathering the often conflicting requests coming in, and prioritising them against each other.

Having said that, I do believe once a piece of work makes it to a point where people are likely to start working on it the developers who will be doing that work should be involved in the process. They should understand not only what is being requested, but also why its being requested, in my experience that often results in them suggesting alternative solutions that either bet solve the problem, or provide a 90% solution with significantly less cost. It also gives them the context needed when deciding on technical trade-offs involved in different design choices.

Re:Scrum disempowers developers by vannevar on Wednesday May 30, 2018 @10:03AM (#17187693)
I want to be the guy who talks to the rest of the employees, implements things and get direct feedback from them.

How exactly does agile prevent you from talking to your teammates and getting feedback from them?

Re:Scrum disempowers developers by betenoire on Wednesday May 30, 2018 @10:20AM (#17187835)
If I have a full and well-groomed backlog waiting for me at my desk, what's there to talk about? Sure, you can, but the the whole point of the PM is to take that off your shoulders and the parent is saying he doesn't want that lifted from him.
Re:Scrum disempowers developers by vannevar on Wednesday May 30, 2018 @10:33AM (#17187943)
A well-groomed backlog is not working code. So I don't get how that somehow means there's nothing to talk about. If there's an agile MVP, it's "write some working code, get feedback on it, then repeat until everyone's happy within some tolerance." Scrum is designed to increase feedback, but it's a floor, not a ceiling.
Re:Scrum disempowers developers by betenoire on Wednesday May 30, 2018 @10:54AM (#17188141)
Sure, but the PM is there for a reason and the PM has roles. There is overlap with what developers can be doing, but we are trained/encouraged to punt to the PM for such decisions, questions, and suggestions.

I get it, but it's now how I do my best work, proxying questions and discussions through a gatekeeper.

Re:Scrum disempowers developers by vannevar on Wednesday May 30, 2018 @11:23AM (#17188401)
We do agile, but also use Slack and email, and walking across the room. If your organization is actively discouraging communication within the team unless it goes through the PM, that's bizarre. On the other hand, if the PM is acting as a gatekeeper with customers, that's not unusual. The reality is that you can't have everyone on the team talking directly to the customer, for a whole host of good reasons.

Regarding decision-making, that can be a problem---some PMs and product owners are micromanagers, hamstringing their team. But they would be micro managers with or without agile.

Re:Scrum disempowers developers by majormajor on Wednesday May 30, 2018 @02:31PM (#17190250)
IME the PM works best when acting as a shield from random questions or future things or other not-important-this-instant distractions, but shouldn't block direct clarifying questions or feedback from you to a stakeholder. I'd keep them in the loop, but the ones I've worked with haven't wanted to just be a glorified "I deal with the goddamn customers so the engineers don't have to!" middleman for basic things like that.
Re:Scrum disempowers developers by alexchamberlain on Friday June 01, 2018 @08:30AM (#17204648)
As a tech lead in a Scrum team, this shield causes more problems than it solves in my experience. We often get questions missing context or find out about a decision too late to provide meaningful input on a technical level.
Re:Scrum disempowers developers by some_account on Wednesday May 30, 2018 @12:47PM (#17189257)
Team mates are the ones I'm working with all the time. I don't need scrum processes to talk to my team. A good team knows how and when to share information.
Re:Scrum disempowers developers by geezerjay on Wednesday May 30, 2018 @01:43PM (#17189800)
> Team mates are the ones I'm working with all the time. I don't need scrum processes to talk to my team. A good team knows how and when to share information.

Scrum processes are just a way to ensure that no stakeholder, including team members, is left out of those talks, left in the dark, or left unheard. Having a clique single-handedly and unilaterally dictating changes without communicating them or listening to any stakeholder doesn't serve anyone's interests. That's how projects fail.

Re:Scrum disempowers developers by vannevar on Wednesday May 30, 2018 @02:06PM (#17190023)
A good team knows how and when to share information.

True. Scrum is a floor, not a ceiling. Nothing prevents the team from going above and beyond the daily standup and the sprint review in terms of communication, and I've never been on a team that didn't communicate a lot more than that. But doing that standup every day ensures that there is at least a minimum of communication, every day.

Re:Scrum disempowers developers by decode on Wednesday May 30, 2018 @06:12PM (#17192361)
I'm pretty sure that when he says "the rest of the employees" he means what Scrum calls stakeholders, not members of the development team.
Re:Scrum disempowers developers by gregmac on Wednesday May 30, 2018 @10:24AM (#17187875)
I want to be the guy who talks to the rest of the employees, implements things and get direct feedback from them. I dont want anyone in the middle of that.

Part of little-a agile is making changes and adapting -- it's literally in the name. If you have a process in place that prevents you talking to the people you need to talk to, change or delete the process.

Re:Scrum disempowers developers by maxxxxx on Wednesday May 30, 2018 @11:01AM (#17188203)
"I want to be the guy who talks to the rest of the employees, implements things and get direct feedback from them"

I am the same way. I much prefer talking to users directly and come up with a solution instead of having a middle man. But I have noticed that a lot of devs much prefer somebody filtering things for them. I guess to each his own...

Re:Scrum disempowers developers by srtjstjsj on Wednesday May 30, 2018 @11:46AM (#17188645)
Why haven't you told your manager that you are willing to do your job plus the product owner's job for only your pay plus half the product owner's pay?
Re:Scrum disempowers developers by s73v3r_ on Wednesday May 30, 2018 @01:37PM (#17189743)
Because that just doesn't work. It sounds clever, but in reality, it would get you laughed out of the office. And then the PO finds out that you offered to get him fired, and now the working relationship is ruined.