Become Part of the Team
In modern software development, no one works alone. Thus giving back is important, allow others to use your knowledge. Being nice is important, with language barriers and the missing emotional component in most digital communication channels. Honesty and constructive criticism are crucial, because they help you and others to develop their skills and avoid mistakes.
Deliver High Quality Results
A nice web interface for the new project is one thing, but how about the software behind it? Does it provide the same high quality? Although invisible to the end user, investing into a well-planned system architecture, test-driven development and a project infrastructure which allows for continuous integration and automated deployment is always a good thing. In the long run it will save you more time and money than you need to invest upfront.
Ship Clean Code
Writing clean code is a key ingredient to any successful software project. It enables maintenance over a long term and by more people than just the original author. And if clean code is delivered, that is an indicator for precise work being done and attention .
Really understanding the problem to solve is the first step in any (software) project. Asking questions is therefore always good, certainly better than pretending to know more than one does. If problems arise, it is equally important to discuss them, regardless of their cause. In the end everyone will be better off, even if things take longer, get more expensive or cannot be realized as planned.
Embrace Open Source
I have been using open source software through most of computing life. And I believe that open source is not only about being open - it must also be free. Because open software only has a benefit if I actually have the freedom to use that openness.