I worked in an incubation group for a few years at Microsoft called Office Labs. While I was there, I had the chance to interact with lots of people across different teams in the company who were working on version 1 projects. One of those teams was up a floor in my building, and they were trying to solve some of the same problems I was trying to solve. So, I set up a meeting with the team’s software architect in his office to see what they were doing.
What’s a software architect? It’s the person who figures out the standards and practices that dictate how engineers in a team will build the product. A software architect makes decisions about tools, platforms, how different components will work, and how different pieces of the product will communicate with each other.
As I sat in this architect’s office, he proceeded to describe what he was trying to build. He showed me some diagrams. He demoed a couple of prototypes. And, he listed the decisions he had made up to then. The goals were ambitious, and the technology, while nascent, looked promising.
At one point near the end of our meeting, I asked this architect a question: “So, what customer is this technology for, and what are they going to do with it?”
The architect paused. He looked at me, and said, “You know, I’m not really sure. You’ll have to talk to a PM on our team about that.”
I politely wrapped up our meeting and headed back downstairs to my desk. My head was spinning. How was this very experienced engineer with decades of experience not clear on who his product was for, and how it was going to be used?
At first, I thought that this architect was at fault for not being able to answer my question. But then, as I thought about it more, I realized the real blame fell on the product managers on the team. If the product managers were not clearly describing the customer and his or her goals to everyone on their team, how was this architect or any other engineer supposed to evaluate whether the team’s work was contributing to a successful product?
It’s the responsibility of a product manager to make sure everyone on the team knows who the customer is, what they’re trying to do, and how the product is doing to help them do that.
If you’re a product manager, make sure everyone on your team knows the answers to these questions.