This past week I was chatting with one of our clients about getting the development team involved earlier on in the product design. I’m a huge advocate for engineers having input early on and think it adds a lot to solution design.
But they had had a different experience. They had invited the engineering team to discovery and design sessions, but then when it was time to kickoff the project many new risks surfaced and the developers expressed a lot of angst about the plans. What went wrong they wondered?
This issue reminded me of a story I read in elementary school.
This is a story about four people named Everybody, Somebody, Anybody and Nobody. There was an important job to be done and Everybody was sure that Somebody would do it. Anybody could have done it, but Nobody did it. Somebody got angry that Nobody did it because it was Everybody’s job. Everybody thought Anybody could do it, but Nobody realized that Everybody wouldn’t do it. It ended up that Everybody blamed Somebody when Nobody did what Anybody could have.
Hopefully, you see the point. When people’s roles are not specified, they don’t know what they are supposed to do and things fall through the cracks. This also happens when a group of people collectively share a role and the individuals aren’t clear about what their personal contribution is supposed to be or if others will cover for them.
Which is what happened at our client who invited the entire dev team to their meetings. I suggested that in the future if a single engineer was included and their role was defined for them that they would have had more ownership and accountability.
Some things that should be part of how engineers contribute early on:
Raising red flags when things will be difficult to implement
Suggesting simple ways to implement or test ideas
Following up with other engineers about details they are less familiar with (back-end or front-end stuff, etc.)
What else do you think should be part of their role during discovery and design phase?