You're already good at marketing
Being better at marketing is essential if you want to work for yourself but it's something developers typically think they don't like or think they suck at.
That's bullshit on both fronts.
Let's say your coworker posts a message on Slack that they're finding it hard to switch back and forth between branches when reviewing PRs. They're frustrated because the repo takes so long to build each time they switch. You can't fix the build today or tomorrow but maybe you can ease the pain. You reply and suggest they look at Git Worktrees so they can keep their feature branch stable and avoid rebuilding it.
Congratulations, you accidentally "did marketing."
How did it feel to be of use to someone? Fucking good, I bet.
And I bet the other person was thankful you were there to help.
Being "good at marketing" really means being good at identifying with the pain someone feels (i.e. empathy) and making them aware that your brand of solution will solve their problem (i.e. relevant).
You're probably already doing this without thinking when helping your fellow developers. You speak the same language so it feels natural. The shift happens when you start thinking about how to help other types of people with the pain they're experiencing in the language they use.
It takes practice but no, you don't suck at it. One way to build confidence is by asking deeper and more meaningful questions during conversations at work.
If you can uncover underlying motivations and pain for the people you're building solutions for, you'll build better solutions.