For more than 5 years in software development, I have been involved in various projects and several development teams. There were different work situations and a lot of communication with different personalities. Based on my experience, I created the image of a professional and valuable programmer. I identified 8 principles you should know to become a good and valuable software developer. We are not considering technical knowledge because it's not fun and differs according to the position. Let's pay attention to other fun aspects 😉 The order is random.
Oh, how many times I heard the word "proactivity" from managers, I can't even count. And it makes sense! A developer works with a client on the same project and in one team. You catch a mistake - create a ticket, correct it, tell someone, do something. This is a win-win situation for both sides. As a result, the client is satisfied, and the developer has done his job professionally. And professionals are always welcome. A good impression builds a network of professionals and friends who will be useful to you. But do not forget that it's just a job. As soon as the project is over, the client will probably forget about you. So, it is necessary to be proactive, but remember the limits.
You should understand that colleagues are usually want to help, not to harm or humiliate. It applies to both, code review and regular tips. Often usual comment about the name of a variable on a subconscious level is perceived as something bad. But it is not the case. Comments improve your code, reduce the possibility of problems in the future. It does not indicate that your code is bad. Think of code review like it's part of the process, something required. Don't forget to write cheerful comments. Find new friends among colleagues!
I borrowed the idea from Uncle Bob, who is the author of "Clean code" and "Clean architecture". Of course, the idea does not apply to any material things 😁 It is about code. If you made changes to someone's code, now you are responsible for that code. Imagine if everyone worked like that. Over time quality of code on your projects would get better and better. And again, happy client, team, and you.
Developer code should be good. However, it should be good enough. First of all, it must work 😁 It should be easy to read and ready for expansion. It will be useful to mention SOLID principles. I recommend looking over them. But you don't have to make the code perfect. There is a point when code becomes good enough, and improving it further is actually spending the client's money because the programmer's time is relatively expensive.
You should know when to rest. It is very important. Without rest programming gets boring, becomes routine, motivation goes down. And it's called "burnout". It is not so easy to overcome it. That's why it's better to have a rest. Not only usual vacation is important. It is necessary to have a rest every working day. If you have an 8-hour workday, then work as much and no more. Tomorrow will be a new day. Even if you work harder today, there will be new tasks tomorrow. Regarding hourly pay, discipline plays an important role. You have to look for a work-life balance by yourself.
You should listen to your colleagues, at least give them an opportunity to explain their point of view. An ability to listen is no less important than to speak. Often it becomes crucial when working in a team. By becoming a better listener, you will improve your productivity as well as your ability to influence, persuade and negotiate. Good communication skills require a high level of self-awareness. Be polite and respect the opinion of others!
Every software developer is also a first-class tester. You need to be fair to yourself and your code, to think not only about the simplest scenarios but also worse cases. Most problems and bugs 🐞 could be stopped on the development stage. Spend a little more time on tasks and test your code. It's worth it.
Learn, learn and learn more. In software development, you basically can't stop learning. You should keep your mind ready and learn something new almost every day! It is useful not only for professional development, but also for your demand as a programmer. Make it a habit to learn and it will help you.
If my story was interesting, you found a mistake, or disagree with something, please feel free to drop me a message. My contacts are at the top of the page 😉