Learn to Let Go
I've been working as a designer for a few years now, and one of the difficulties I have faced in my career is dealing with rejection.
For example: you have prepped a series of prototypes to walk through with your client. You are excited because you've added a new typeface or thrown in some modern-looking icons. It looks slick and polished. You pull up your beautiful designs and throw around words like "clean" and "user-friendly". And once you're done, you step back and wait for the applause. You killed it.
But the client looks confused. There is no applause. They start asking questions about how it works, and you're not prepared.
Perhaps you get defensive because you don't want to look like an idiot. Perhaps you're frustrated because they don't seem to care about all those little details that you care about. It is at this point where you find yourself at the intersection of art and design.
I mean to share all this because it's happened to me all too many times. As a designer, you need to understand that what you are making is not for you. It's not for your portfolio or for your Dribbble page (I've seen way too many posts of glittery UI's that are seemingly unusable).
At the end of the day, people are going to use your product. So be very careful when you create something and assume that everyone will understand what you've made. You should never assume what your users want. Rather, seek to understand before building something that doesn't matter.
In a recent interview with Intercom, Sequoia Partners James Buckhouse said:
"You’re never designing just a sign-up form. You’re never designing just a way to share. You’re never designing just pixels to click. You’re always designing some sort of compliment to the human condition."
So in conclusion: understand your client by understanding your users. Build something that they would be proud of. Let go of your pride and learn how to listen. Learn to let go.