How to get better in software development?

Photo by Matt Artz on Unsplash

How to get better in software development?

  • Get better in reading code. Code is the ultimate truth and you should be able to check unfamiliar code bases quickly and comfortably to answer your own questions.

  • Get better in writing. If you can't express yourself in a natural language well, there is no way to explain yourself in a programming language. Both are using the same skills.

  • Improve your programming (algorithmic/data structure) skills. You could think them as a way of speech or idioms you could use in a natural language that tell a lot in a concise way.

  • Be proactive such that prefer being sorry than asking permission. It's best learned by doing.

  • Don't be afraid of asking/demanding. What could go wrong, worst case is that you would get a reply as no and it's exactly where you are now.

  • Sunshine your mistakes and learn from them. Never try to cover up your mistakes and instead shout loud about them but don't forget taking necessary take away lessons and actions to prevent it happening again.

  • Have hobbies and side initiatives/hustles but always try to align all of them with your goals. Like vectors, they can be many and different but eventually, they should point in the same direction.

  • Become a person who people want to be around. Programming is much more social than expected and learning from others has a high signal to noise ratio but for this to happen, you need to be a magnet to pull quality people to yourself. By the way, if you care about the quantity, it’s exponentially better to have a few friends than many acquaintances. Investing in your personal relationships is the most important thing you can do.

  • Life (people, projects, etc.) is unfair. Never expect otherwise. If you put the hard work, it doesn't mean it will take care of itself. Of course, it is more possible and feels good but you know that someone with born skills, which is a pure luck, could put the same hard work, then who wins? Make the best of the hand you’re dealt and don't worry. If something isn't working, learn to jump into the next project after a retrospective analysis without getting emotional or building grudge etc. This is a skill.