Historically web developers just need to be able to code websites, but with so much information and code available online, there are more and more developers that have come on to the scene that has little coding ability but can still build great websites.
As a developer, you need to understand the bigger picture and be able to advise your clients accordingly. If you are self-employed or setting up a business, you will need to know how to sell your services and what you should be advising your clients on. You need to know what it is they actually need rather than just what they think they want.
Marketing is such a major part of how successful a website is that to be a good programmer you need to be good at marketing too or at least work very closely with someone that is to allow you to offer the full package to your clients. SEO, for example, is vital and although your clients may not be able to see how much or little you have done behind the scenes in terms of SEO they will soon start to complain if their new website is not getting found on the search engine website.