Storytelling for Software Engineers
Story telling is a life skill. This post focuses on how story telling can be practically used in the daily life of a software engineer. It does not focus on the usual ways we see - VC funding for startups, viral social media posts, marketing etc.
- Why do stories matter ?
- What are the elements of a good story ?
- How can software engineers use storytelling regularly ?
Why do stories matter ?
Stories have been used from the begining of the human civilisation for community building. The most interesting chapters in our history books are those having a great story. The best books, movies, series and advertisements are those having a compelling story. Many of us have fond memories of our elders narrating stories with us hanging to every spoken word.
The common thread running through all of them - stories help to build an emotional connect.
At the end of the day - our software world involves people. Automation can help in optimisation and scaling but stories can get people to care.
What are the elements of a good story ?
Know your audience
You cannot please everyone. Identifying your core audience (eg: majority) is important and it allows you to connect with them after understanding their perspective.
Eg: For an audience of experienced k8s practioners, you will do better to go deep on concepts while for those new to k8s, you should explain from a generic tech perspective.
An eye catching start
All of us suffer from information overload. A crisp headline saves the time of the audience by communicating the core message in a single line. But do not use a bait-and-switch technique to give a misleading heading.
Well laid out takeaways help the audience to save time again while ensuring they dont easily forget the core message.
Well prepared content and presentation
Steve Jobs used to rehearse a lot for his picture perfect presentations. This helps refining the content well while internalising it. Practicing in front of a mirror helps you to take good care of your body language and verbal pitch.
How can software engineers use storytelling regularly ?
- Storytelling can be the most powerful way to improve the onboarding journey for new folks. Its often the most ignored part though. Rather than point a new dev to handful of links with bland info, we can make the documentation experience interesting enough for devs to actually read it well.
Some tips :
- For those starting the document, add pre-requsities(info or links) to ease the learning curve.
- For those ending the document, add next articles to read. This helps create a sequential plan similar to a book reading experience.
- Use visuals/images to simplify concepts. Use elements of the 4+1 architectural view model OR C4 model to show different perspectives.
- For more improvements, place yourself in the role of a new dev and think of the documentation you would find interesting to read.
Eg: You can see an initial part of a “Fundamentals” section in a getting started guide I had created for an Azure Kubernetes setup.
Instead of focusing on what each person did during the sprint review, the sprint goal should be used to set the storyline. The major stories can be demoed in a flow which makes sense to the audience.
Some tips :
- Whether its a ppt or a markdown file, limit the content of each slide/story to just 3 parts - title, business impact, implementation summary.
- Focus on a quick demo of what was done. Use a recorded video to fast forward the demo if its time consuming.
- Ask for audience feedback at the end so that you know what worked and what didnt.
Backlog User Stories
Lots of guides are out there on how to write a good user story. Eg: Atlassian guide on user story.
Some tips :
- Ensure the story title resembles the format -
“As a [persona], I [want to], [so that].”. This ensures the user, the summary and the business impact is always given.
- Attach images wherever possible as it helps the developer visualise things.
- Learnings from the way Steve Jobs presented are a great way to make effective presentations where one way communication is involved.
Some tips :
- Involve the audience. Ask questions. Give an activity.
- Less content and more visuals on your presentation slide. Dont let the audience get distracted with reading the content. Let them focus on the visual shown and your words instead.
- Add emotions to the equation. Usually humour keeps the audience invested.
- Keep it conversational.
- Focus on takeaway for the audience and not on highlighting what you know.
Eg : For introducing stakeholders to a cloud setup, I used a block diagram to show the network architecture and focused on it. I created other diagrams for showing security, identity etc to be used in further sessions. This ensured I didnt lose the audience.
- Most people pitch their profiles in elevator pitches, interviews, introductions etc.
- You have to focus on the most important aspect about yourself in a short time of a minute or so.
- Focus on who you are, what do you do, what are your skills and finally how you can help the person/audience.
- Do your research on the person/audience to know their requirements really well.
- Avoid rambling and speaking in a fast monotonous way.
Story telling can elevate every conversation but it requires you to do a fair bit of homework. If you want to avoid a boring exchange of information then its definitely worth investing the time and effort for pracising the art of storytelling.