Skip to main content

Talking to customers

Earlier today my family was on the road returning from a family wedding when we decided to stop for lunch. Needless to say, it didn't go spectacularly well (my Twitter rants are rare, and only occur when something has really set me off):









Needless to say, we didn't stick around and eat sandwiches. In fact, I would hope that this establishment's ownership recommend the staff get some additional training on how to interact with people. If the same employees did this more than once (you should always cut people some slack), I would probably recommend they be fired.

But I thought this experience might provide a great opportunity to talk about being a professional when interacting with customers.

Regardless of what your occupation is, you will at some point have to talk to someone who would be considered a customer. The customer could be an actual paying customer or client, a manager, a professor, an evaluation team, or any number of people for whom your behavior determines whether or not you will be successful in your current endeavor.

When I speak to customers, there are a five things I always make sure to do:

  1. Be empathetic - Try to understand their position. If a project has not gone as well as they had originally expected, be sure to tell them that you understand their frustrations.

  2. Be honest - If you can avoid making the customer frustrated by being honest about capabilities, timelines, and costs up front, then you can avoid frustrating situations.

  3. Don't over-sell - This can be a difficult one, especially at first. You may think it's important to sell your customer on the idea of the moon. But if you can only deliver a wedge of cheese, then you have established a reputation for under-delivering. You can tout your skills and successes, but be sure that it doesn't spill into boasting or exaggeration.

  4. Never blame the customer - If you are working with a customer, never directly blame them. It really doesn't matter whose "fault" something is. If you are working on a software project, for example, you may not have come to full agreement on the project scope. Instead of saying "You didn't tell me that was what you wanted!" try saying "I didn't realize that was part of the project scope." This will keep the situation from escalating .

  5. Don't escalate a situation - This is the absolute most important thing to remember. If a situation becomes tense, never escalate by trying to prove your point, blaming the customer, devolving to the use of personal (ad hominem) attacks, or becoming aggressive or flustered. Remember, as a professional it's your responsibility to act like a professional in front of your clients. Always be sure to ask yourself, "is what I get out of doing this going to be worth it?" Most of the time, the answer will probably be no.


It's really pretty simple: be honest, be empathetic, and always be professional. And always remember that people are imperfect. Be sure to cut people some slack every once in a while. If you can do that, you will build a reputation for courteousness, reliability, and overall ability to get the job done - everything a client could want from a professional programmer!

As always, be sure to contact me via Twitter or LinkedIn, or feel free to leave me comments below!

Popular posts from this blog

Neural Network Dense Layers

Neural network dense layers (or fully connected layers) are the foundation of nearly all neural networks. If you look closely at almost any topology, somewhere there is a dense layer lurking. This post will cover the history behind dense layers, what they are used for, and how to use them by walking through the "Hello, World!" of neural networks: digit classification.

Arrays of Structures or Structures of Arrays: Performance vs. Readability

It's one of those things that might have an obvious answer if you have ever written scientific software for a vector machine. For everyone else, it's something you probably never even thought about: Should I write my code with arrays of structures (or classes), or structures (or classes) of arrays. Read on to see how both approaches perform, and what kind of readability you can expect from each approach.

The Only Neural Network Layer You Will EVER Need

Neural networks can seem daunting, complicated, and impossible to explain. But in reality they are remarkably simple. In fact, they only ever require a single layer of neurons. In my previous post about the basics of neural networks , I talked about how neurons compute values. They take a set of inputs, multiply each input value by a weight, and sum the terms. An activation function is then applied to the sum of products, to yield the output value. That output value could be zero (i.e., did not activate), negative, or positive. In this post, we will go deeper down the rabbit hole. We will look at neuron layers, which layers are actually necessary for a network to function, and come to the stunning realization that all neural networks have only a single output. Organizing Neurons into Layers In most neural networks, we tend to organize neurons into layers. The reason for this comes from graph theory (as neural networks are little more than computational graphs). Each layer con...