I've been a conference speaker for a lot of years now, which doesn't make me an expert but it does mean that people ask me for advice pretty regularly! With the Call for Papers open for PHP North West at the moment (awesome conference, first weekend in October, CfP at http://conference.phpnw.org.uk/phpnw15/call-papers/), I've taken this question a few times. Here's my advice in a nutshell:
- Think about what's interesting that you could share with other developers. The key here is that the people listening should go away with something useful, rather than just the impression that you're awesome
- Write it down. You don't need to write the talk before you submit - just a title and an abstract will do. The abstract should be one paragraph, maximum 200-250 words
- A great abstract says why this topic is vital, what cool things will be covered, who should come and what they will learn. I'm paraphrasing but those are the basics!
- Submit your abstract to http://helpmeabstract.com/ to get feedback from some lovely volunteers who will help you (bookmark the gist and keep revisiting it, the system doesn't notify you or anything ... yet. Pretty sure you can submit patches while procrastinating on a slide deck though)
- Did you get this far without submitting? That's normal :) Remember that your community needs new voices. Each of us is ahead of *someone* on the path, you absolutely don't need to be the expert to have something to offer to the rest of us. So please, submit :)