KYC for Software Developers
Tags: kyc, software, developers, tips
Published: 2021-04-30 21:50:33

KYC which stands for “know your customer” 🔎 is a concept popularized by the finance industry which was introduced to prevent/reduce financial crimes. KYC has helped a great deal in combating various financial crimes but it has also been a mechanism businesses over the years leveraged to serve their customers right since they have done due diligence on them.

The latter part of the benefits of KYC as explained above is what we will focus on in this article as Software Developers. But first, what exactly does KYC mean for Software Developers?

### KYC for Software Developers - What it means
Just as we have it in the finance sector, KYC is simply knowing who our customers/clients are as Software Developers in order to be able to serve them well. I’m sure you must have heard the saying “customer is king” 👑.

The truth is, we all have customers even as Software Developers, and wouldn’t it be great that we get to know our customers well enough in order to know how best to delight them?
So, the question is that “As a Software Developer, do you really know your customers”?

### Do you know your customers?
Firstly, who is a customer? According to this [Wikipedia definition](https://en.wikipedia.org/wiki/Customer), a customer is “The recipient of a good, service, product or an idea”. Using this definition in the premise of software development as developers, it means that whoever we render software service, product, or an idea to is our customer.

In this article, we are going to only explore KYC as it relates to 2 categories of developers.
1 Backend Developer
2 Frontend Developer (Mobile and Web)

### Caveat ✋🏼
The end-user of the product is the ultimate customer of all Software Developers regardless of which side of the technology you work in. If you don’t put the end-user in mind while developing the product, you’re most likely just setting yourself and the team up for failure.

There is no product without the end-user, it is as simple as that so effort should be put into knowing them so as to develop a great product that meets their needs/wants.

### Customers of a Backend Developer
The following people are the ones you should hope to delight as you work on the server-side of the product/application.

As a backend developer your customers are primarily the frontend developer, the product manager, and then the end-user of the product. Let's talk about how that is below 👇🏼

* Frontend developer (Mobile and Web)

Since the frontend developer is the one who will be consuming your carefully crafted APIs and present your work in a more friendly way to the end-user, as a backend developer, you need to develop the habit of delighting the frontend developers on your team.

Putting the frontend developer in consideration when developing applications can actually help in developing better solutions on the server-side of things.

How well you satisfy your frontend developer(s) will have a direct impact on the end-user of the product. For example, if your endpoints have terrible response times, you will most likely frustrate the frontend person especially when some of these endpoints are ones with data that change very often.

In this case, even the end-user will be affected and there will be nothing the frontend developer can do about it. So, invest time in knowing them so that you can delight them 😉

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/nawyrqgvbk5fof1j8elc.gif)
[image source](https://giphy.com/gifs/blackluckfilm-angry-huh-xUOxfhdEwk5hITHOog)

* Product Manager

Equally, the product manager is the direct customer of a backend developer and you will need to deliver in a way to keep them satisfied as well. To put the product manager in mind is to carefully examine and understand the product requirements and vision of a product which in turn will lead to churning out better software.

### Customers of the Frontend Developer (Mobile/Web)
As the frontend developer, you’re the closest person to the end-user and they are your number one customer alongside the product manager and the backend developer so you should take your time to know them and work to delight them.

* End user

Since you’re the gateway into the application/product and like they say, “the first impression lasts longer”. Whatever experience you leave the user with during their first encounter with the product can be a determinant as to whether or not they will continue using the product so you should try your best to make sure you leave them delighted as much as possible.

Make sure you always advocate for the end-user at every available opportunity because they are the most important entity to the product and you are the one interfacing directly with them.

* Backend Developer
Just as you are a customer to the backend developer so is the backend developer a customer to you. The relationship between you two is bi-directional so you should try to make their life easier the same way they should yours.
A good synergy must exist between you two to create an amazing product that your users will love.

* Product Manager
Yes, the product manager is your customer and not your enemy as the frontend developer. Knowing your product manager well can help you understand their vision beyond the written requirements for the product which will in turn help in crafting out a better solution that will make everyone happy.

### Conclusion
“Customer is king”, investing in knowing them will mean that you’ll be able to serve them in ways that keep them delighted and, a delighted customer is a loyal customer who will continue to sing your praise without paying them to do so.

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jt1gwupf2r34syqjrwdu.gif)
[image source](https://giphy.com/gifs/hulu-snl-saturday-night-live-nbc-l0MYNtfxWsYtZN852)

Even though in the software world, the word “customer” often refers to the end-user but the truth is in order to delight the end-user by our application via the code we write, we need to keep our internal customers delighted as well failure of which will have a bad ripple effect on our end user.

So, I’m putting it to you as a Software Developer reading this that you should endeavor to know exactly who your customers are both internal and external, and strive as you write your code to keep them delighted.