The human face of the software

If you want to create a great product or service, you must think all the time about the customer that will be using it.

While it is easy to think about the customer when you have a customer in front of you when working in the client facing roles, it is harder to think about the end user when the customer is miles away from your desk and you rarely or never, get to see them or even talk to them, not even exchanging emails, not even knowing who is it?! ARGH

I’ve been working in web and software development industry for over 15 years and I can see it all the time that the designers, developers, programmers, very rarely think about who they are making their products for. All it counts is specifications, features, budget, deadlines, design, source code, etc. and the customer and the end user of the product are somewhere lost in all of that.

I know exactly how it feels because I used to be a programmer sitting all day in front of the computer writing code. Now, whenever I go to see clients to discuss the project, it totally changes my perspective on things. I’m suddenly starting to see the real people that are trying to achieve their goals through the products we are building. It is difficult, however, to transfer these feelings and emotions to the team. Discussing with the team how important the project is for the client won’t change much.


If you have a team of people and you’re facing a similar issue there are a few things you can do to help them see the project from a different perspective; from the client perspective:

Inform your team who the customer is, including their name, position, and the goals they are trying to achieve.

Invite individuals from your team to a call with the client. Make sure to introduce the individuals and inform the client about their role in the project.

Take people from the team to a meeting with the client or invite the client to visit the office and meet the team. Regular catch ups with the client is not a bad idea.

Ask the team to present a demo of the project or a final product to the customer during a meeting or during a call. Ideally, inform about it at the beginning of the project so the team can work on the project while having this thought at the back of their mind.

You can do much more than this. The general idea is to make sure that your team knows exactly who are they’re working for and have as much interaction with the client as possible. It significantly improves their engagement with the project.


I know organisations where the developers are shielded from the customers which is, in my opinion, a very bad idea. The team dynamics and the engagement of individuals change dramatically when they see faces of real people behind features and project documentation. This leads to not only a better output from the team but also to better job satisfaction of the people from the team. At the end of the day, software is created by people to people.