| What works: A lead who plans out the project and works with engineers or engineering teams with different specialties to scope out the required components. Lead puts together a plan that is path dependence aware, engineers / teams work iteratively and communicate status. Leads often don’t know how to lead, scrum hides this. Management is supposed to be understanding the organizational needs of completing such projects i.e. making sure the right personnel are on the team, on the right teams, that the right teams exist, and that individuals are capable (technically, as a matter of attitude, incentives, conflicts of interest). Management often doesn’t know how to manage and scrum hides this. Product is supposed to be coming up with the projects. It gets more complicated as there are “technical” products where the PMs are maybe the leads of Engineering teams, and other ones, but overall, someone is supposed to be responsible for defining what to do next as a discrete goal. Product often doesn’t know how to do this and scrum hides this. The thing everyone gets wrong with agile / scrum is that you just keep hacking away until “something” gets done. Without getting into how “agile isn’t scrum” and really just meaning “the death march of ill-specification and low accountability that often gets described as scrum or agile”, you’re supposed to actually start and stop stuff. You can start, fail, and restart. But you need to complete stuff, then look at what was planned versus what was delivered. You need to make specific people responsible for specific things getting done. If people can’t handle their assignments, they need to be given different assignments or removed. This all sounds really simple, but at dysfunctional orgs, it gets way off track. Being somewhere where nobody is responsible for anything is practically a right of passage in this industry. |