I am literally facing this at work. One of my colleague has an opinion on everything. Its quite frustrating because he is neither the most experienced person in the topic nor is he any good. I literally caught him using an if else statement for check whether a dictionary contained a key when one line would have done. Its programming 101, pick up a book and you will learn it in chapter 3. But he goes on saying he has 5 years in this industry... I am like okay bro. How he got a job is beyond me.
In the end, kindness is a tool in EQ. You should use it when needed and be stern when another approach calls for it. Hiding your dissatisfaction just to be kind will do the company long-term dis-service. Especially to the code base.