Table of contents
A few years ago, there was a point in my career when I was a senior developer with a decent salary. I was working on an interesting project and doing pretty well. At some point, I started to feel burned out like there was nothing more waiting for me. I wondered how I can level up so much as a developer that it would make a big difference in my life.
After a few months, I found it. Since then I tripled my salary, opened myself to a vast amount of opportunities, and dramatically increased my skills but more importantly, I started to feel my purpose again. What was the answer? Writing about code.
If you think that you don’t want to be a blogger or teach anyone, then you are in the right spot. It wasn’t the reason for me as well. You don’t have to be a blogger or teach anyone to change your career as a software developer. If you are interested in how you can do it, keep reading.
Imagine yourself being skilled 2 or 3 times more than now, recognized in your community and environment, and being invited to conferences and podcasts. Imagine yourself not being asked to prove your skills. All of this and even more is just a side effect of writing about the code.
Every one of us has different goals and dreams, but I firmly believe that all of us want to feel comfortable with our work and the way other people perceive us. Being not bothered by layoffs, economic crises, and things we cannot control sounds like a dream for many of us these days.
However, there are things that you can do to build a solid personal brand that cannot be easily bothered by others. Writing is one of these things.
Why? There are benefits
There are many benefits of writing about the code, and no matter what are your goals and aspirations, you will find things that will attract you:
Increased technical skills - when your write about something, you have to do the research. When you do the research, you find things you didn’t know before.
Increased salary - you won’t get paid unless you will prove what your skills are. With writing, you are doing that not only to your current employer but also to the future one.
Increased soft skills - you learn how to communicate more efficiently and effectively express your thoughts so other people understand your point of view.
Strong personal brand - others will not only notice you but also perceive you as a valuable member of the community and a technology expert.
Preparation for feedback - many of us are afraid of hearing the feedback. When you write, you expose yourself to other people's opinions. With time you will get comfortable with feedback, and more importantly, you will start getting valuable information out of it instead of focusing on the emotional aspect.
These are the most important benefits that you can get thanks to writing. Let me give you a little bit of context for each of the points based on my own experiences.
Becoming the mythical 10x developer
Have you ever heard about those 10x developers? About people who can take any new technology and start using it comfortably in a few days? About those engineers who are not afraid of taking on the most uncomfortable challenges?
You can become one of them by practicing difficult things. Writing is difficult, no doubt about that.
It’s difficult to focus on one thing at a time.
It’s hard to face the opinion of other people or the lack of interest from their side about the things that you are doing.
It’s uncomfortable to expose your skills to other software developers.
It’s super hard to be wrong and admit it.
Every time you do what is hard, you become better. It’s like training. The harder training is, the better you are prepared for the competition time. And the competition can mean an interview, a call with a client, or a challenging project.
Double or triple your salary
It’s not enough to learn a new skill to get promoted. The world is full of engineers that learned how to use this or that technology but never proved it. The community is full of developers with great ideas that they never experimented with. You just need to step into that spotlight so others can see the outcome of your work.
When you publish your writing, you are stepping into that spotlight. Sometimes no one will notice you. Other times you will get criticized. But the more you try and improve your craft based also on the feedback, you are getting better and noticed. People started to know what you know. Among these people, there is your employer, your team leader, or another decisive person.
And when it comes to money, you won’t get more for having beautiful eyes or a warm voice. Stop being afraid of the learning process and stop being afraid to show what you have learned. Show what you know not only to earn more but also to validate yourself. Having the outdated knowledge is as helpful as not knowing.
Take care of things other developers won’t take care of
Even when you are a solo developer, you still communicate with other people at some point. I believe that weak communication did more damage than weak software, as usually, the second is a result of the first thing.
What I sadly observed many times was very skilled developers were not able to communicate with each other or explain their ideas clearly. I saw engineers unable to talk with the clients, code reviewers unable to express their valuable opinion, or maintainers unable to show the abilities of their software to the world.
By practicing writing, you practice expressing your thoughts the way other people know exactly what you mean. You usually write software for other people, and sometimes you don’t even get a chance to write the first line because you are not able to communicate well. Unfortunately, still, a lot of developers do not pay attention to this. You can start and get ahead of your competitors.
Let your name speak for itself
I work as a CTO, so I speak with many clients. Some of them ask me how I will hire the best developers for their projects. I already had a few cases where I was recognized just because I was sharing my knowledge in the community. They already knew that I played in the first league, so it was obvious to them that I knew who to look for.
Technical interviews are one of the most stressful things in the software developer career. Imagine that you don’t have to take them to get the position you want. This can happen when your name speaks for you and speaks for your skills and experience. But before it can happen, you need to give it a voice. And you give it voice by constantly expressing your opinion and sharing your knowledge.
When people want to work with you, you move very fast. But they won’t know you unless they will meet you in person or get in touch with your work.
Stop being afraid of hearing opinions about yourself
We love being appreciated and admired. Things get harder when not everything is going as smoothly as possible, and we can perform better than we did. As human beings, we tend to avoid situations where someone can point out our weaknesses.
When you share your work, usually, people will take advantage of expressing their thoughts about it. Many times the feedback won’t be warm. It’s difficult. I always say that writing is one of the most effective and uncomfortable ways to learn new things.
Is it hard to hear from someone that we were wrong? Yes, it is.
Is it hard to hear from someone that we could perform better? Yes, it is.
All of these are even harder when it happens publicly. But at the same time, it’s extremely powerful as we have a chance to improve our skills. Don’t let it get wasted.
I already know that you probably don’t want to teach anyone or become a full-time technology blogger that is writing for the audience instead of getting better results at work. That’s fine.
That will sound selfish, but here is the truth. Right now, it is more important for you to become better thanks to your writing than for others to become better because of reading what you have written. Still, it won’t convince a lot of developers because:
They are afraid they will feel embarrassed - their worst nightmare is being criticized by someone in public. Here is how I deal with that: the feedback makes sense? Admit that you were wrong and correct yourself. Benefit for you; you learned something new. The feedback was just hate speech or someone elses’ frustration? Just forget about it.
They think they don’t have anything valuable to share - when you get the mindset where you write for yourself, it does not matter if you will write how the variables are working in Python or how to perform complex migration from on-premise to Cloud. The question is does writing it benefit you? I believe yes.
They don’t want to waste time writing - it’s just an exercise that will help you to become a better software developer. If you don’t want to exercise, others will beat you easily, and you won’t use your full potential.
They don’t know how to start - I wasn’t born with the knowledge of how to start writing effectively about technical stuff. The good news is that I share how I did it later in this article.
There are probably many more reasons why developers don’t want to practice writing. Some of them are reasonable, and some of them are just excuses. Most of the time, they don’t want to do this because it is uncomfortable. But remember: nothing great comes from a position of comfort.
How - step-by-step guide
If you still read this article, I believe there is a smaller or bigger chance that you want to try working on your skills by writing about programming and related stuff. It takes courage.
I started my first blog in 2009. I haven’t thought a lot about the name, just picked up Wordpress and started to write about things that I learn how to use (it was JS and PHP back then, no surprise). It didn’t last a long time. What is the moral of this story is that you just have to take the first step and figure things out as you progress.
Fine, pick the name
Usually, it’s a matter of selecting if you want to host the blog with your name (or part of it) as the domain or have some other name. I started with the domain dziamber.com.pl (dziamber was my weird nickname as a teenager in the counter strike). Then years later, I used pdabrowski.com, switched to longliveruby.com, then switched back to paweldabrowski.com, and then abandoned it.
Nobody cares about it. I think the name is less important than you can imagine. Especially when you start. But please don’t pick something that you will be ashamed of in the future if you will progress as a software developer.
In the end, you can always change the name and do the redirections from the old domain; there is no point in thinking about it for a very long time, as it’s just another thing holding you back from starting.
Pick the place
I tend to spend too much time building a blog than writing on it. I spent days migrating between Wordpress, some static generators, and my own CMS for the blog. As you can see, I landed on Hashnode (they are great so far!).
Having your server and using Wordpress is great.
Having your server and using a static site generator is great.
Writing on platforms like Hashnode, Medium, or Dev.to is also great.
Just pick one and start. Spend a little time reading about the limitations and features of each option, think for a while about the future, and then pick. Hook up your domain, and you can always migrate later with a smaller or bigger cost.
Write - 10 steps to write fast and good
In the past, I struggled a lot to write a more valuable and long article. I even wrote over 100 medium size articles before I learned how to do this effectively. You don’t have to publish so many articles. I will share my workflow with you:
Pick the topic. The more specific topic, the better. “10 habits that you can develop to become a better developer” is better than “How to become a better developer”.
Write your ideas for the article, don’t pay attention to the format or the value of the idea. Aim to write down as many ideas as you have, even the craziest ones.
Google the topic and save 10 - 20 articles that come first on the result page. Read them and note the most valuable parts.
Based on your ideas and notes that you took from other developers, write down the ideas that you would like to include in the article.
Write a plan for the article with all the headings. The more detailed plan, the faster you will write the article.
Write the article draft based on the plan.
Use tools like Grammarly to fix mistakes.
Come back to the article the next day and read it. Correct it if needed. Delete some parts, add some parts.
If you are happy with the outcome, publish.
Repeat the flow with every article but don’t burn yourself. One article per week or two weeks is perfect.
It works for me; either I write for myself or other companies. After I developed the habit of following all the steps, I was no longer frustrated or tired by writing. It became more natural.
How not to write
Do not write without a plan or purpose, seriously. If you aim to write the article, not a simple note. Many times in the past, I got back to my article (intentionally or unintentionally via Google), and the structured content helped me to quickly find what I was looking for.
I also observed that I produce the best articles when I listen to my intuition (which sometimes I ignore). I usually write bad content when I stick too much to the idea of producing content that will become popular. If something is not resonating with you enough, there is a high chance that it won’t resonate with other people as well.
Last but not least words
Writing about the code was a game-changer for me. I regret not trying this for many years. I was too afraid of the opinions of other developers.
Was it uncomfortable to start? Yes.
Was it hard to stay consistent? Hell yeah. I already abandoned many blogs.
Was it worth starting over and over again? Definitely. I started from zero only once. With every next start, I know more, move faster, and learn and achieve more.
Start writing about the code, not for others but for you. This is the advice I always give to people when they ask how they can progress in their careers and grow professionally and mentally. Do many people follow this advice? No. We often want the same outcome, but we don’t want to follow that path.
In the end, is the journey, not the destination, that matters the most. Will you take the first step? Or should I say, will you write the first step?