by Stanislav Kozlovski
Why Every Software Engineer Should Write Articles
And How It Benefits Everybody
In today’s highly complex and rapidly evolving computer science industry, it is more important than ever to have people writing technical pieces that explain complex technologies and concepts in a simple way.
You’ve already seen it. The tech space is riddled with a plethora of fields and buzz words: Blockchain, Machine Learning, Deep Learning, Data Science, Distributed Systems, Quantum Computing, Big Data, AR, VR, Microservices, NoSQL, Progressive Web Apps, OLAP, A/B Testing, WebAssembly, Kubernetes, Hadoop, Ansible, DynamoDB, Terraform, Vagrant, GRPC, Thrift, JWS, Ethereum, Cassandra, etcd, Kerberos, CentOS, DC/OS, Prometheus, Kafka, OAuth, OpenStack, Avro, containerd, zstd, Oodle and countless more…
Depending on how knowledgeable you are, you might have heard about all of the aforementioned. Even if you have, the question is how well do you know all of them? Would you be comfortable explaining to a complete novice what all of these are at a high level and be sure that you aren’t skewing any information?
Unless you are really, really on top of your game, I bet the answer is no.
Today’s technology is growing in complexity and variance day by day at lightspeed. It is becoming increasingly harder to keep up with everything new that is happening.
On a personal level, I am quite frankly struggling to keep up with everything new that’s happening while trying to be exceptional in work and balancing my personal life. And I’m not even that busy. I know for a fact that there are people out there trying to balance 10 times more things than I am. I have no idea how they keep up, if they do at all.
The space needs more good writers who are able to digest a certain piece of information and present it in a succinct way for fast and easy comprehension.
For example, I once tried to learn what Kubernetes was. Naturally, I opened up their documentation and starting reading through it (what better source than the official one?). After a couple of pages going through each concept, I found that I hadn’t understood absolutely anything. Maybe it was my fault, but after talking to other fellow engineers, I’ve found they also found it challenging.
Then I found this article. I read it in under 10 minutes and revisited the documentation afterwards. Everything was clear now.
As you hopefully saw, that Kubernetes article was at a very high level, but managed to provide you with a great overview through clear explanations and great analogies. If there were such world-class introductory articles for every technology out there, everybody could get up-to-speed in a matter of one day, instead of re-reading and struggling to digest the same documentation over and over.
This would be very beneficial for the industry, as it would help expose the largest number of people to the newest tech, therefore allowing the field as a whole to advance faster.
To achieve this, though, we need people to put the effort into creating such content. Let’s go over why it’s worth it for everybody involved.
What You, The Writer, Win
At first glance, you might think that you only lose the time that is dedicated to creating proper readable content. This is not true in the very least. Writing articles has multiple amazing benefits to your growth as a person.
If you can’t explain it simply, you don’t understand it well enough — Unknown
I know this quote is very cliché, but you realize how true it is after you try to explain a topic you’re not too knowledgeable on. I’ve personally experienced this — an article I imagined would take at most a day to finish, took me close to a month. Once I started to actually write it, I started to uncover how many things I was unsure of. Not long after, I found myself with more than 20 open tabs full of resources I had to read.
Since you want your article to be of the highest quality, it is very important to verify and be certain that everything you’re saying is correct — your name is on the line! This makes you think very hard about every single statement you place in your article, and requires you to know the concept you’re writing about inside-out.
In the end, I’ve found that writing an article on something helps me firmly solidify the concept in my head and understand it thoroughly. This is my strongest motivation for continuing to write. Nowadays, the only way I’m sure I know something is after I’ve written an article on it.
Contributing and being appreciated is something we all inherently enjoy.
Knowing you have helped people even in the slightest way brings fulfillment to your life. Having people write positive comments on your articles always bring positive feelings.
Good communication is essential. In your personal life, you will very frequently need to justify your thoughts and opinions. At work, you will very frequently need to explain concepts or approaches to other (probably non-technical) people.
These things are regularly done through writing. One of the top companies in the world — Amazon — makes their employees write narratives instead of presentations.
Therefore, it is very important that you are able to convey your thoughts through writing in a masterful way. Practicing is the only way to improve.
Hopefully the content you’re writing will be actively read by people. This opens you up to a lot of opportunities like meeting new people, having speaking engagements, and even being offered jobs.
I’ve had immense success through writing. My Kafka Article helped me significantly propel my career by landing a job at an amazing company called Confluent. They found my article and thought I might be a good addition to the team, thus they interviewed me. Everything worked out and now I’ve found myself part of a better, more challenging, and interesting organization in a new country.
Apart from career advancements, the articles I’ve written have helped me connect with other very smart people across the globe. For example, I was recently contacted by an engineer who found me through my distributed systems article. After a quick chat, we decided it would be cool to meet up while we were both staying in the San Francisco Bay Area (thanks for showing me around, Quan!).
What Others Win From Your Content
Even though I’ve portrayed it as a somewhat selfish endeavor, writing in its most basic sense is altruistic. It is the process of sharing knowledge. Through writing good, succinct pieces, you are helping further the education of other people.
In this digitalized world, it is now easier than ever to reach a wide audience and provide massive value. You are contributing to and outright helping push the industry forward by getting more people up to speed with the latest advancements.
An alternate view
Different people come from different backgrounds. Because of that, some content might click perfectly with one type of audience but completely go over the head of another.
I’ve personally stumbled upon many resources where, after I’ve comprehended them, I recognize that I could have portrayed the same thing in a much more simple (to me) way. This isn’t because the writer did a bad job — it is purely because of my different perspective on the concept.
As such, it is extremely important to have many different resources on the same concept, all of which present it in their own way. This increases exposure and maximizes the amount of people that can grasp the concept.
Good quality technical articles are needed for a healthy software industry. As I showed, there is much incentive for you to put in the effort and produce quality technical content. It is inherently very beneficial to the reader and even the industry as a whole. Please do trust me when I say that writing opens up a lot of opportunities to you as an individual, and is worth every minute invested into it.
Final Call to Action
If you want to take a step in the right direction — start writing an article on something you feel knowledgeable about right now! Chances are there is something that’s been on your mind these past days. Of course, the best approach is to not force it, but sometimes you have to force through writer’s block and just produce some sort of a draft which will eventually be perfected (send it to your friends for review).
Even if it is something simple in your eyes, there is certainly somebody out there that was as clueless as you were before you learned it — help them by presenting the concept from an alternate viewpoint.
I currently work at Confluent. Confluent is a big data company founded by the creators of Apache Kafka themselves! I am immensely grateful for the opportunity they have given me — I currently work on Kafka itself, which is beyond awesome! We at Confluent help shape the whole open-source Kafka ecosystem, including a new managed Kafka-as-a-service cloud offering.
We are hiring for a lot of positions (especially SRE/Software Engineers) in Europe and the USA! If you are interested in working on Kafka itself, looking for new opportunities or just plain curious — make sure to message me on Twitter and I will share all the great perks that come from working in a bay area company.