I’ve now read several articles about why software developers should start a blog, each of them with very compelling reasons. It pushed me down a YouTube rabbit hole too, watching vlogs of software engineers at big companies and what they do on a daily basis. But, it took some time for me to feel the need to do something similar. When reading or watching said articles and videos, I would always think, “what do I have to say that people aren’t already saying”? After the fifth article of why I should start a blog, I picked up on two big themes throughout - it’s a great way to solidify what you’re learning and demonstrate that knowledge to the community.
With this realization came a mindset shift going from “what unique information can I offer?” to “what knowledge do I need to solidify for myself?” Often times I’ve heard people say that you don’t understand the topic well enough if you can’t teach it to someone else. So, I’m taking that to heart and starting a blog to talk about the things I’m learning so I can better understand them and hopefully get some feedback on my learning by sharing this knowledge with my community. In addition to those themes, I’ve realized there are a few more reason why starting a blog is a great idea for software engineers. I’ll dive deeper into those reason in this article.
Solidify Your Understanding of a Topic
It’s now been well documented that teaching a subject increases your own knowledge of said subject. There are a wide variety of reasons for why this happens, but the phenomenon that sums it up nicely is the “protégé effect”. Annie Murphy Paul said, “Students enlisted to tutor others, these researchers have found, work harder to understand the material, recall it more accurately and apply it more effectively” when speaking about a pair of studies published in the journals of Science and Intelligence back in 2007.
It makes sense - to teach someone else, you’re going to need to know how to explain the topic. This engages your critical thinking to weed out what’s important about this topic to teach others while also forcing you to review that information. Because of this twofold process, teachers will undoubtedly review the subject matter more frequently, which I would think makes recall much better. This then translates to a better understanding of the subject they’re teaching.
When it comes to blogging about software engineering, this means that you fulfill the teaching role by writing about a subject you’re learning and sharing it with others to also learn. This engages that critical thought process of organizing your thoughts and forcing a review of the information so that you better understand it in the process. By going through this, you also open your mind to new questions which further develops your knowledge of the subject. A very nice side effect is that you are building a cache of knowledge that you can go back and reference, too.
Opportunity for Networking
Sharing your knowledge with the community is also a great way to start networking. Other software engineers are able to engage with and establish a relationship with you through your content. This can open up a whole host of opportunities for you like jobs, contract work, fun projects, and more learning experiences.
I know this from experience, but putting yourself out there for criticism can be scary. That’s something that often times slows my progress when coding too because I wait for something to be perfect rather than deploying and iterating. By blogging, you open yourself up to a network of people who might criticize your work. But that’s great! That gives you another opportunity to expand your knowledge or see a different perspective on the topic you’re writing about. It’s all about growth mindset in software engineering.
Build Your Street Cred/Demonstrate Your Knowledge
Job opportunities can arise from blogging about your knowledge because you’re establishing what you know. You’re building your street cred and demonstrating by highlighting what knowledge you have, what you’re working on, and where your knowledge gaps are. This can help you become viewed as an expert in a topic or a thought leader on a specific technology. This further provides other opportunities for you as other people seek out your knowledge or skillset.
Build Stronger Communication Skills & Break Down Hard Concepts into Digestible Information
Your ideas are only as good as your pitch. You could be the smartest person in the room, but if you’re not able to articulate your idea well it will likely not take off. By blogging you’re sharpening your communication skills so that when it comes time for an interview or an opportunity to demonstrate your knowledge, you already know how to organize your thoughts concisely and you’re well versed in what you’re speaking about.
I could see this becoming particularly useful in management or senior positions when you have to explain difficult technology to newbs. If you’re able to break it down so it’s digestible for someone who doesn’t have your background, they’ll be able to understand it a lot better. Blogging provides the opportunity to make that skill shine as you progress through harder and harder subjects.
The reasons listed above are the ones that resonated with me the most from the research and articles I’ve read. I’ve struggled with consistently blogging in the past, but having these core concepts in mind for WHY I’m blogging illuminates the importance to me. I’m always trying to be a better developer and blogging appears to aid in that mission through solidifying my knowledge, allowing for more networking opportunities, building my street cred, and enhancing my communication skills.
What are your thoughts? Do you think it’s important for software engineers to blog?