People who work in technical professions often find client communication challenging. If you have detailed knowledge of a particular field, you have to find ways to translate your understanding into terms a client understands. While this is challenging, it is also rewarding, as end users provide great insight into bigger picture issues.
If you provide any form of customer support, it's important to establish good working habits when you meet a new client or customer for the first time, to keep projects from getting out of hand.
When you first meet a new client for the first time, note what preferred means of communication (e.g. email, phone, instant messenger).
When you talk to someone new, try to determine their role - this tells a lot about what they will be most concerned about. Lower level people typically send a lot of problems, and have a different perspective than the people they report to.
Make sure the rules of engagement are clear. E.g. what types of problems you can fix, when you are available, whether you are completely dedicated to their project, whether you are available nights and weekends, and so on.
Encourage the use of a ticketing system. Narrowing a defect down into a specific issue is a skill, and a well-managed ticketing system lets you separate multiple problems into multiple tickets.
Show Progress. If you use a ticketing system, you can place intermediate research on tickets, which shows people that they aren’t being ignored.
Teach users to take screenshots. If your application displays enough detail when there is an error, you can reproduce a lot of problems from a few images.
Identify a way to prioritize issues. Clients will not want to do this for you, or not do it in a way that you will be happy with. You might prioritize issues that effect multiple clients, issues blocking a sale, or issues with key functionality higher than others - a client will tend to classify every issue as high priority.
Do screen-sharing conference calls. Sometimes it’s important to see the exact steps a user takes - or to straighten out the names a user has given to UI elements in your system.
Agree on language. It helps if entities in your product or project are consistently named.
If the client uses their own vocabulary for your system, try to learn and use it. This is also valuable if their employees do not speak the same native language as you.
If you are in the U.S. and work with people who speak English as a second language, pay attention to and use the idioms and pronunciations. Indian English, for instance, has a number of phrases which are peculiar to Americans.
Have more ideas? Post a comment below, or email firstname.lastname@example.org!