I hate silos… A long time ago a very smart engineer who worked for me pointed out that you can never under communicate. I’ve worked in many organizations where under communications was the norm, the classic example is somewhere between micro managment and lack of awareness.
You’re working on a project, there might be three or four groups of people involved… You’ve got Engineers, Product Managers, 3rd parties and Exec Managers. What happens is that the product managers swarm together and iterate through product requirements, then piecemeal inform engineering. While the engineers and product people are working Exec. Management is “determining” capactiy planning information from the 3rd party. Which of course engineering is not aware of, so while they’re doing their capactity planning exercises with the 3rd party, Exec. Managment is doing a similar activity with different numbers. All the while you’ve got a group of product managers who are creating piecemeal requirements without awareness of Exec. management nor engineering needs.
Of course, since at somepoint everybody realizes that not only has the whole process been siloed but because there was no “one true owner” (that owner should be the product and engineering lead) that you’ve got a mismatch between requirements and capabilities. Along with many people feeling disenfranchiced due to communications happening around them.
Take a small organziation, say 10 people… A functioning organziation who have everybody roughly aware of everything that’s going on (Agile/Scrum standups maybe). In a siloed organzation what you end up with is a bunch of people working in their cubes, a few people deamed “managers” who really don’t manage since “the boss” goes around to individuals cubes and changes the task assignments, without communicating them.
…ok… managers? You would expect that the managers would stomp their feet and force tasks back on track, but the challenge is that engineers are typically communications challenged. So, without the support of standups by the time they realize that something has gone amiss, it’s already too late. Of course “the boss” claims that his direct communcations is trying to make things move forward faster without meetings and you have managers who “hate meetings” since they’re not managers, but engineers!
While I’m not a huge agile/scrum fan, what I am is a fan of any system that forces regular communciations. Not only that, but you can never keep too many people aware of any process, if you even remotly think it’s important to them, keep them in the loop. If you keep people out of the loop it’s a quick way to cycle into disfunction and with enough disfunction it’s unrecoverable.
ps. make sure projects have “one” true owner — if it involves the project and the owner doesn’t know, you’re screwed.