Why should you write as a software engineer?
Writing has been a transformative skill in my journey as a software engineer. It has helped me think clearly, communicate effectively, and collaborate better.Importantly, it has improved mental health
I began my writing journey in 2015 with a WordPress blog, focusing on Android development and best practices. Over six months, I wrote about ten articles. While I enjoyed sharing my knowledge, I struggled with SEO and didn’t gain many readers. WordPress didn’t feel like the right platform for me at the time.
In November 2016, I switched to Medium, which was becoming popular among writers. Over the next few years, I published 28 articles, many of which were featured on curated lists. This visibility helped me grow my audience, and I even set up a paywall, earning a small amount of passive income. Despite this progress, I struggled with consistency and stopped writing on Medium in August 2020.
Later, I discovered Hashnode, a platform designed for developers. Excited to return to writing, I resumed in January 2023 and published four articles that month. However, I once again lost momentum and stopped writing.
In December 2023, while listening to the Joe Rogan Podcast, I learned about Substack. Inspired by its focus on writers, I decided to give it a try. I started with a few articles, paused for almost a year, and resumed writing last month. So far, I’ve published 13 articles in December alone, not including this one.
Lessons from My Journey
Looking back, I’ve noticed a pattern: I get excited about writing but struggle to maintain consistency. Over the years, I’ve learned valuable lessons, often through trial and error. These lessons have not only shaped my writing but also improved my career as a software engineer. Here’s how writing has helped me:
Clear Thinking for Problem-Solving
As a software engineer, I often face complex problems that require a structured approach to solve. Before I started writing, I struggled to organize my thoughts. Unresolved ideas would linger, causing stress and making it harder to focus on my work.
Writing became my outlet to clarify these thoughts. For example, when debugging a tricky issue or designing a new system, I started writing down my approach as if I were explaining it to someone else. This process forced me to articulate my thoughts clearly, identify gaps in my understanding, and refine my solutions. Writing has become an essential tool for improving my problem-solving skills and mental clarity.
Improved Communication in Teams
English isn’t my first language, and I used to struggle with clear communication during meetings. Whether presenting a design or explaining a complex concept, my ideas often came across as scattered, which slowed down decision-making.
Writing changed that. By structuring my articles with an introduction, explanation, and conclusion, I learned to organize my thoughts effectively. This skill translated directly to my professional life. For instance, when presenting a technical solution, I now use the same structure to explain the big picture, provide details, and conclude with actionable recommendations. This has helped me communicate more effectively, especially during code reviews and team discussions.
Audience-Centric Thinking
In the past, my presentations often failed to resonate with colleagues because I focused only on my perspective. I didn’t consider how others might interpret my ideas, which led to confusion and misalignment.
Writing taught me to think about my audience. When drafting an article, I ask myself questions like:
Who is my reader?
What do they know about this topic?
What questions might they have?
I’ve applied this mindset to team meetings and documentation. For example, when onboarding new developers, I now write documentation with their perspective in mind, ensuring it’s clear and accessible. This practice has saved countless hours of repeated explanations and has improved collaboration across the team.
A Reliable Source of Truth
Software engineering often involves extensive discussions, and it’s easy for team members to have different interpretations of the same conversation. In the past, I found myself revisiting topics multiple times because there was no single source of truth.
Writing detailed meeting notes or documenting technical decisions has solved this problem. For example, during a recent system redesign, I documented every decision we made, including the reasons behind them. This helped align the team and ensured we didn’t revisit the same discussions unnecessarily. Writing has become a way to preserve clarity and accountability in my projects.
Higher-Quality Documentation
As a senior engineer, I’m responsible for creating documents for business stakeholders and team members. Before I embraced writing, my documentation was often vague and unhelpful. With practice, I’ve learned to write clear, concise, and actionable documents.
For instance, when writing a technical design document, I now consider both technical and non-technical audiences. This ensures that everyone—from developers to business leaders—can understand the content. Better documentation has made onboarding smoother for new team members and improved decision-making processes within my team.
Final Thoughts
Writing has been a transformative skill in my journey as a software engineer. It has helped me think clearly, communicate effectively, and collaborate better. Most importantly, it has improved my mental health by providing a constructive outlet for my thoughts.
If you’re a software engineer, I encourage you to start writing—even if it’s just for yourself. Begin with a personal journal or share your experiences through a blog. Writing isn’t just about improving communication; it’s about growing as an individual and a professional.
What are you waiting for? Start your writing journey today.