| ▲ | jmward01 3 hours ago | |||||||
Every team I have been on that has been effective has had a few common traits: - Teams stay relatively small so if problems are big then they divide and conquer with teams of teams so that they can: - Bite off problems that they can fit in their heads which allows them to: - Meet often not to just speak out loud with nobody really listening, but instead to actually coordinate and plan concrete steps that progresses the problem. And they can make daily adjustments not just because they are a small focused team but because they also: - avoid backlogs, feature lists and similar documentation where possible since these things give them momentum in the direction they thought they were going when these products were created and not in the state the problem is in now. Each of these things fight, well, math. Communication is a math problem. If everyone is talking to everyone about everything then you have a non-polynomial growth problem. Designing the big problem perfectly from the start is NP. Divide and conquer doesn't give you a perfect solution, but it gives you a really good one and it gives it to you in reasonable time. Splitting the task, and the team, and minimizing the communication, and accepting the loss in finding the perfect solution that triggers, is all needed for divide and conquer. We never accept that though so it turns back into an NP problem and something ends up dropping. Time, quality, capability or, unfortunately often, the whole thing fails. Similarly, if you put things on a backlog then prioritizing that backlog is again NP and that is especially bad if there is one massive team backlog from all sources. Backlogs become dead idea bins because it isn't possible to organize them efficiently so stop wasting time on them. If your team is properly sized they know what is needed now so they can make the next small step and they can optimally design and implement that step in their piece of the bigger problem. They will get done quickly and have a good product as opposed to getting done never because of the pursuit of the perfectly coordinated and communicated solution. If you divide and conquer properly then the communication/process you use at each team's level becomes so obvious that every formalized system out there becomes silly. Let the team do whatever works for them. They are small and nimble and learn to talk to each other so no need to slam a process at them that makes them a machine. | ||||||||
| ▲ | gitonup 2 hours ago | parent [-] | |||||||
Is this in opposition to what I said? I consider process that is [a) done by the folks in that team and b) revised on a regular basis] to be a form of healthy communication while being efficient. | ||||||||
| ||||||||