Running own game development studio/company is much alike playing sports – it’s all about a team work! The whole team is like a mechanism where each member is an integral part. So, what could help to distinguish a good developer among tens of second-rate?
- Intelligence and modesty
The best programmers are those who understand how limited their capabilities are. They are modest. The worst programmers refuse to accept that their abilities are not up to the task (like “I’m a super star”, “I know everything”, etc.). Character does not allow them to become excellent programmers.
A good programmer never stops learning.
An important feature of the programmer’s character is his curiosity regarding technical issues.
- Study the development process;
- Experiments (mini demos, own trial projects);
- Being a member of blogs in order to learn and ask questions from the community;
- Analysis before doing anything;
- Being aware of the best games.
- Professional honesty (being honest with yourself)
In what ways:
- Refusal of the claim for the role of expert, no matter of the quality of skills (there is always someone who is cooler);
- Willing recognition of own mistakes – especially after a test task;
- Providing realistic estimates of the duration of the project and advocating own position, even if managers ask to adapt the estimation.
- Communication and cooperation
Truly great programmers know everything about effective collaboration, which always means writing a clear code. Especially if this code will be used by others.
- Creativity and discipline
Some programmers believe that standards suppress the freedom of creativity. It is not the case. It is necessary to work on the task within the established standards, otherwise the resulted code can become unuseful.
- Hard-working nature
Laziness can manifest itself in several ways:
- Delay of performance of unpleasant task;
- Immediate performance of an unpleasant task in order to get rid of it as quickly as possible;
- Writing a tool to perform an unpleasant task so that it never has to be performed again.
Characteristics that are less important than it seems.
In addition to haste, there are other characteristics relevant in other areas of life, but not particularly effective in software development:
- Persistence (meaning stubbornness);
- Experience given the current dynamics of the industry (example – commitment to old approaches and technologies);
- The passion for programming – working 16 hours a day can be really exhausting resulting in mistakes that are hard to fix.
Bill Gates says that any programmer who will later become good, is good already in the first few years. After that, it is almost impossible to change. This is an axiom.
When learning to do something – learn it the right way. It is manifested in a person’s thinking, his systematic approach.
And the last but not least, when interviewing a potential programmer, we pay attention to how a person develops, whether he has this ability at all. The IT sphere is constantly developing and requires the same thing from devs.