Developers tend to have the biggest ego and opinion in the room yet from time to time, they are also the ones who are clueless about the users or real-world scenarios.
I'm a developer. I like to interact with customers some of the time and wouldn't even mind taking some support calls once in a while. I feel like it keeps me in touch with reality, like you're saying, and I like knowing that people are out there using my stuff.
But most developers don't feel this way. Forcing them to take support calls just to satisfy the boss' idea of how their ego should be adjusted just doesn't sound to me like something that's likely to be productive.
I don't know anything about the business structure you have in mind, but usually customers don't get to talk to the developers so they don't expect to be able to do it unless its part of the contract. In my experience usually they don't even ask unless someone has put them up to it.
E.g., they may be working on a complex issue with a Support guy in over his head who has been reduced to relaying messages to "the developers". I'm happy to jump on such a call directly because it feels like it saves everyone time and running around.
But all companies with lots of users eventually develop layers of Support in place to shield their developers from potentially constant interrupts.
...and the cost impact of a software developer who doesn't understand the customer and real-world scenarios is enormous. They just sit there are crank our new support calls, new support costs, worse customer experiences, slower growth rates, deteriorating customer experiences.
You need to take action to stop them folk coding as quick as...
Getting the customer to do it is as good a way as any.
Yup. How do you get to zero defect if you don't? The point is to eliminate support calls by root cause analysis:
* is the software borked?
* are the doco's borked?
* is the user community too poor/uninformed/unsupported to generate the answers without developer involvement
The devs are a key part of determining which of these things is the root cause. If they don't talk to the people who matter (the customers) how can they help solve the problems?