I have been a part of many teams that had no idea who they were building for. They understood what their organization did and what the technical requirements were, but they did not understand who would be using the service. This gets even more convoluted for back-end teams and teams structured as a service.
I used to lead a team that automated file transfers across the organization. Most of the time, requests came in very technical.
Pick up from “X”, parse for “Y” and move to “Z”.
When we asked who the customer was, we never got a straight answer. These requesters were not trying to be difficult. They often did not know.
I found that asking the question, “Who will care if we break this?” led to who the customer was quicker than asking who the customer was.
The first Agile Principle states:
“Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.”
Therefore, if we do not know our customer, we run the risk of making these top mistakes.
- Building the wrong thing
- Not abiding by compliance regulations
- Destroying our reputation
- Destroying our brand
As a coach, I do not care how we get to “who” the customer is. I just care that we get there. Do not settle for not knowing. Push back when things are unclear. I promise you, it is not a dumb question.
Understand that if you build the wrong thing, you will build it again and nothing is worse than rework, coupled with the perception that your team is incompetent.
Demand to know your customer!