An unreserved, no-background-needed, yes. Writing and Speaking is how you show to other people not only that you know your stuff but that you can communicate it effectively.
These are vital skills not only for your work, but to help you in your next job search as well.
I guarantee that what you know and the mental model you have for what you know, is going to help someone. So please write it even if it's been written about before.
It's about writing/speaking about it in your own voice.
You can stare straight at the back of the room and pretend you're giving a talk to a large empty room, bonus, it looks like you're confidently looking right at the crowd! If you're nervous, stack the front row or middle with your friends whose job is to nod and smile and thumb's up and you're going to look right at them as you give your talk.
Another technique which I picked up later is best explained via a quote from the movie Bohemian Rhapsody, about the lead singer of a band called Queen.
- Mary Austin: What's it like, singing for all those people?
- Freddie Mercury: When I know they're listening, when I know I really have them, I couldn't sing off-key if I tried. I am exactly the person I was always meant to be. I'm not afraid of anything
The audience is your friend. They want you to do well. You're chatting to them about something that was fun enough for you want to tell other about it and they're eager to hear it. You're all going to love this :)
Whatever you do in your daily work! Have you:
- Come up with a nice solution for something?
- Gotten through a painful setup of a library or a dev environment?
- Learned something that was difficult for you and now have an insight that can explain it in a simpler way?
All these ideas are what you know really well and have spent some time on. You could save somebody else that same time by doing a talk/blog post on it!
Whatever you want to talk about, what would be the broad headings of how you'd explain it to someone?
If you consider a book on the topic, what would be the chapter headings? Write these down.
Once you've got your chapter points, you can look at them overall and get an idea of how the talk would go and how you'd like to present it.
Keep adding bullet points, like sub-chapters about the ideas you want to discuss within the main chapter. These may eventually be a slide each, or just points on one slide for the chapter!
It's a good idea to give people a reason to care, tell them about the biggest benefits of your ideas in the first 2 minutes of the talk.
Don't talk about setup unless that was the hard part for you, you can link people to the setup and that's usually enough.
Don't have a huge amount of text on your slide. The less you have, the better. Nobody can read and follow what you're saying at the same time.
At most, do bullet points. If you do have bullet points, animate them in when you reach them, don't display them all at once. Most slide making software have something for this including Google Slides which is what I use.
If you have code, only include the section relevant to the concept you're trying to explain.
You can add a github link for the full detail and don't overwhelm the people with large classes or waay too many functions.
A good rule of thumb is, if it's too much code to comfortably read as a slide from across the room you're sitting in, it's too much code for a slide.
Write your code in Android Studio, use Roman Nurik's Slides Code Highlighter to give you the syntax colouring in Google Slides.
Another way to do this is with Carbon which will give you pngs or svgs of your code but when you make the inevitable mistakes, you can't edit that image!
That's why I prefer getting the colour formatted text and running it through the slides code highlighter.
I'd always suggest looking into your local meetups. You can usually find these on meetup.com or asking about it on twitter or asking your other colleagues what they know about.
The huge famous meetups you can always find on google.
Ideally you should do this before you've even written your talk. Most abstract applications will end in rejection. Get used to rejection, it's also really good for you.
By writing short abstracts, an enticing paragraph about what your talk could be about and what people could expect to learn from it, you'll minimize the time you take to apply to conferences and increase your chances of being accepted at one.
You can absolutely write a talk about anything you've done, I always feel like there's not enough there to fill a 40 minute slot and then when I sit to make the slides I realise there's waaaay too much to cover in just one talk!
And if the idea is rejected and you really want to do it anyway, consider making it a blog post!
I use Google Slides and the Slides Offline Chrome Extension so that I have the slides available even if the internet is spotty.
I also create a public sharing link and put it into bit.ly with a nice readable name and keep that as a Whatsapp Message or emailed to someone so that I can refer to that in case you can't use your machine at all for whatever reason.
It's always best if you can involve the audience somehow. Whether that's making them laugh, or guiding them so that they can get an intuitive feel for what's next and asking if they can fill-in-the-blanks or asking for their own experience of things. The more you give the audience a chance to speak, the more they'll connect to you.
Once you've given a few talks and are familiar with the idea. Be aware that this isn't a college lecture or a dull presentation.
Speaking is a performance. You're an actor on a stage and your job is hold the attention of these people and give them something to remember. How you achieve that is usually by amping up either your natural personality or whatever you find entertaining to see.
Speaking is what Donn Felker calls "The Single Best Thing You Can Do For Your Career" and I'm very inclined to agree.
Good luck, you can do this and you're going to get better with practise.