By Idris Azeez June 4, 2018

Becoming a Better Software Developer

Becoming better at what we do for a career is what many aspire to in life. However, it is not enough to simply keep doing the same thing every day. To become better, we sometimes need to do things in a different way from how they were done previously.

This especially applies to the field of software development. It is important to highlight some of the ways to improve as a software developer because, in the end, a better developer would be far more likely than a good developer to be considered for that job, that next promotion, or that next raise or bonus.

Becoming a better software developer is about becoming proficient in your skills, growing your skill set every day, and being able to use such skills to deliver solutions to your clients. Becoming better is not only about gaining the skills, but also using those skills to create value for the user.

As a developer, becoming better does not only rest with you becoming an improved version of yourself, it also means that you are able to work as part of a team, since most of the work developers do is as a team, unless you write all the parts of your software yourself.

A good team member is also able to help other team members become better at what they do. The team excels when it works together. A developer becomes truly better when they are able to master how to develop their skills personally and also able to help others get better.

Here are some suggestions from one software developer to another that could make a lot of developers become better than they currently are.

Develop a Reading Habit

Reading is one of the ways we can experience new things. We can experience the lives other people lived through the books they wrote, and we can also learn new knowledge from books and other documents people with such knowledge have shared.

As a software developer, technologies change almost every day, and what worked yesterday might not be the best method today. One of the easiest ways to learn these new things is by reading. Reading exposes developers to new information, which makes the process of writing code much more interesting and progressive.

This gathering of knowledge does not end with books; it continues with watching videos, listening to podcasts, and absorbing knowledge through all other possible means.

As knowledge is what is most valuable as a software developer, this aspect should never be underrated. The more knowledge you have, the better you are as a software developer.

Software development works in a lot of ways, but one of the best ways that works is the method that involves using a lot of knowledge and up-to-date information.

In this age and time, software developers can be considered as knowledge workers, and the only way to be worthy and better as knowledge workers is if we have more knowledge, and one of the easiest ways to gain that is by learning from the experiences of other people.

So to continue becoming a better knowledge worker, never stop learning. Read, read, and read some more.

Be Focused

Consider the Hedgehog Concept in a lot of the work you do. The Hedgehog Concept is about a fox and a hedgehog. The fox knows many things, but the hedgehog knows one big thing.

Since software development has so many divisions, it is easy to fall into the trap of wanting to know a whole lot of things. This means that you would need to become a master in a number of areas before you are recognized as a professional in the field.

However, to easily become recognized in the field, you need to specialize. To specialize does not only mean to learn one programming language; it means to choose a focus, an area you want to become good at. If you prefer the front end, stick to it; if the back end is your flair, stick to it.

But this does not mean that you do not go outside your field. What it simply means is that you have a major area of focus, while you have other areas that you can work in once in a while. You need to choose a focus and keep at it.

This means you need to do your research and make sure you know what you want to master. This might take a while, but once you have chosen an area, try as hard as possible to stick to it. It means that you have simply done your research and have chosen an area to spend most of your time on.

You can learn a lot of things and be good at them. However, good is the enemy of great. To be great, you need to strongly consider becoming much more than good. It might take a genius to be very good at a lot of things, but for the rest of us, we would need to pick an area and keep focusing on it.

Consider being a back-end developer who writes a lot of back-end languages. It is much better to become a professional at one of the back-end languages rather than simply learning it all on the same level. With this, it becomes very difficult to be acknowledged as a legend in the field; but if you choose Java as your most preferred language, for example, then you begin to increase your focus and become much more proficient in that skill.

Consider great names in the world of software development and realize that they are linked by one thing: They are not just jacks-of-all-trades. They learn quite a lot of things, but they seek proficiency in one of these fields. You can continue to learn new technologies as they emerge, but also choose an area of proficiency. It matters that you do because it is not about knowing a lot of things; it is about knowing a few things but knowing them well.

In the end, every organization wants a focused professional, not a jack-of-all-trades.

Practice Your Skills

It is important as a knowledge worker to gather a lot of knowledge, but how do we validate and store what we learn if we do not practice?

See practice as a way to validate what you already know and to continue to filter what you know against what works. You need knowledge that is currently valuable, not knowledge that was valuable 10 years ago.

To be useful in the modern day and time, your knowledge also must be useful. One way to make that knowledge useful is by validating it from time to time. Reading alone is not enough; you need to practice.

Imagine yourself as a tennis player who feels they already know all there is to learn and does not practice for even a week. They might still be strong when they play a week after, but they would have been much better and stronger if they had practiced before playing.

But you may ask, how do software developers practice? Well, one way is to do one thing again and again until it becomes a part of you. Take a problem, find a way to solve it, and do this a number of times. This method will stick with you and you’ll simply do it better the next time you have to solve that problem.

Whenever I would see people solving problems on an amazingly fast timeline in Google and other code challenges, I used to consider those people geniuses. Then, I realized that they might have seen that question or another kind of question that uses the same principle before, and they would have practiced to solve it a number of times in order to become that effective and accurate.

Also, professional software developers are able to write code faster and better, because they have been writing code for quite a long time and they have practiced a lot of the things that look very difficult to someone who has not practiced.

Practice is key in every field, so to continue to be better, you need to practice.

Share Your Knowledge

Sharing is powerful. You give to someone what you know, and you just let that continue to help as many people as possible. One way to continue to improve as a developer is to share what you know with others.

Write articles and blog posts, make videos, or use other ways you feel you can share your experience and knowledge with the outside world. Who knows? Maybe what you know might help another person get that dream job or avoid that life-altering mistake they are about to make.

Share the way you solved a particular problem you encountered while developing a solution; write about the problem and exactly how you solved it. Someone, one day, might go through the same problem, and might contact you towards solving the problem and this might be the gateway to a consultation business.

The power of sharing can never be underestimated. As I’m writing this article right now, I do not know how many people thousands of miles away could benefit from the knowledge and wisdom they would gain from this article.

Imagine one person shares, then the next person, and the next, until we all have shared something that would make the software developer of tomorrow avoid that mistake or build that amazing feature or product.

Take the Bold Step Today to Become a Better Software Developer

We can always become better in everything that we do. As software developers, we can upgrade our knowledge through reading, learn what others know, focus on one thing rather than being a jack-of-all-trades, practice to fine-tune our skills, and share what we know. These are some of the ways we can make the field of software development, and indeed ourselves, become better.

About the author

Idris Azeez

Idris is a backend Software Developer with experience in developing Enterprise applications using Java. He is also a Software Developer with programming experience of close to 3 years. He loves to code and also teach. You can find him on LinkedIn.