I have been working remotely with a developer that has become my main and only partner in a business project - a website - I have. I am the CEO and I'd like him to be the CTO if this becomes a bigger business in the future. I pay him 25% of the revenue.
We have a good relationship, we usually speak every week. He is very good at what he does and I have given his almost complete freedom and control about decision making when it comes to software-related decisions.
I usually handle the rest: business and design (UX/UI) decisions.
I have not studied design, but I know our users well, and, to certain extent, I trust my skills in this regard. Also, I take input/feedback from professional designers (friends of mine) frequently.
He has sometimes given some design ideas, which I disagree with by giving reasons on why the idea I had was better, or on why his idea was not good. I'm usually referring to the user behavior or psychology when formulating my arguments.
Even if he does not express this, I have noticed that he gets slightly resented about getting his design ideas rejected.
This is not a problem and our relationship is still good, but I want to prevent long term consequences or this escalating in the future.
I have to admit that I have the tendency to control things and think that my ideas are great (I've been proven wrong many times).
Also, I have to mention that, compared to other developers I've met, he is quite social-savy. I like him as a person and respect him as a partner.
My questions is: how can I better reject his design ideas when I disagree with them, but not discourage him from giving input?