Have you ever asked yourself how to be a better software engineer?
I'm sure every software engineer has asked themselves this question at least once in their lives. It's a natural question to ask, because we want to be the best at what we do.
There is no one-size-fits-all answer to this question, but there are some things that my colleagues have in common. Here are a few suggestions, based on my observation and accumulated experiences:
English is a must. The documentation and the programming language you work with every day are also in English. Don't stop at reading comprehension. You must at least be able to communicate with foreigners. Don't let foreign languages be a barrier to your development.
Before solving the problem, calmly analyze the problem. A big problem is a collection of small overlapping problems. Keep calm, break them down and look for the root of the problem in that mess.
Most of the problems you have to solve come from a customer need, and your software is also designed to meet that need. Think in terms of how the customer behaves.
Everyone has a favorite programming language. You must make sure that you understand the tool you are using. Of course, no one is asking you to master it 100%, but try to find out as much as possible about the tool you use every day.
You should try different programming languages, but to compare their strengths and weaknesses and update your knowledge, don't think you have to know everything. Remember the saying of Bruce Lee: "The person who practices one kick 10,000 times is more terrifying than the person who practices 10,000 different kicks."
Software engineering is a team sport. The problem you are solving may be known by someone else in your team. Communicate with more people and you will see that things are resolved much faster.
This is a great way to network with other software engineers, to learn from other software engineers, to learn about the latest trends and technologies.
Even better, be a speaker.