As a freelance developer, my relationship with clients extends far beyond coding. The engagement is educational, helping clients become efficient product owners, understand the value of iterative development, and adopt a proactive approach to Quality Assurance (QA). Also on my end making sure I really understand their domain, their goals and help break down those goals into realistic achievable features. 

While I may get paid to code, my ultimate goal is to build the right features. And this is rarely if ever exactly what the Product owner expected.

Read more https://alnutile.medium.com/a-developer-must-help-their-client-learn-to-be-a-product-owner-e178435899d1