In our case, we stay close to the customer. Some ways we achieve this:
- We have a shared Slack channels with at least 20 customers. All engineers are on these channels and see the communications that is going on.
- All engineers work with customer support 1 week every X weeks. All engineers are on the support channel too and see the topics of the tickets / customer requests. - We gather customer feedback for feature requests and all new features are based on business priorities informed by this feedback.
- PMs and Designers regularly talk with customers when doing product research. When we have an idea of what we might want to build, 1-2 engineers join them in shaping an Epic (size: 1-2 months) or a Story (size: ~2 weeks). One of these engineers will lead the Epic/Story, which means that they amass a lot of context of the both problems of the customers and the technical details of the solution. Usually they are able to do much of the scoping/product decisions quite quickly after the Epic/Story has started.
- Engineers watch a sales / customer success call every two weeks and then join to discuss the contents of the call together.