Small and medium sized business cannot have a separate budget. Esp when the marketing is the cost center, most of the time cannot have a developer full time assisting them.
It is fine to have an engineer do both jobs, but my stance is that time spent on non-product engineering needs to be accounted under the proper accounting bucket, in order to avoid diffusion of responsibilities.