| There’s a lot of roles needed to build a product. As the engineering load grows, the engineers have less time to handle those other duties themselves as much as we might like to. When that happens, other people have to be involved to take over. There are real requirements to communicate with other parts of the business, customers, coordinate who is doing what and triage what is needed when. So generally, I agree with you that the mindset isn’t a great one. At the same time, there are methodologies that aim to alleviate exactly this problem by ensuring engineers directly control more than they often do. Scaled Agile (SAFe) is my favorite because of two core tenets. 1. There are 2 backlogs, one managed by product/business and one managed by dev/ops/arch. Going into planning, capacity allocations are given to each (usually 70-30 product dev). Priority among those backlogs is entirely handled by the group managing it. 2. PI Planning where backlog items are presented from each group and dev is responsible for planning out those priorities over the next 8-12 weeks in the manner that they believe is best. Everybody who could potentially answer questions that devs have is present with their schedules cleared to streamline the decision making process. Plans are discussed with management, risks assessed and finally agreed on. I love this process. It gets everybody on the same page as far as who is doing what, when and why. It reduces friction and lets devs focus for 2-3 months at a time without a directional shift. Planning from product is focused on the next PI instead of the constant “we have to drop everything and work on X now!” situations that so often happen. I wish more orgs would adopt it. I hear so often about devs stuck in orgs claiming to do so that aren’t actually doing any of the things that make it great and it’s frustrating. |