Maintain a safe environment
According to Google, one of the main features of a good team is the sense of security - feeling that you will not be unjustly accused, criticized or humiliated. People naturally protect themselves against negative reactions by keeping a low profile. Afraid of criticism, they do not share their often very valuable thoughts.
Teams that feel safe are more willing to try new solutions, take on responsibility and take on new roles within the team. It is also easier to share knowledge and give feedback, even unpleasant ones. In addition, people are best at improving themselves when they know that they are not at risk of facing negative consequences or harsh judgment for their attempts.
And this is where your role comes in. Dear Team Leader, a great atmosphere will not create itself. It’s your responsibility to put in effort into developing it. Do it by explaining and educating how it will be beneficial in the future, enhancing the team performance. There are plenty of sources which can help you with achieving that (I liked this one - Harvard Business Review). They explain how to introduce such an atmosphere into your team step by step. I personally recommend completing this task in collaboration with other key project roles (PM, testers, analysts) - our policy should not only apply to the programming part of the team.
A capable team leader is also a “proxy” of the team, connecting it with the outside world. There may come a situation in which someone from the team wants to immediately find the person responsible for a mistake and punish them on the spot. In such moments, you need to react quickly accordingly, in order to prevent destruction of the previously built security and ensure that constructive criticism is used within the team. Sometimes you will also have to take responsibility, even for things that were not entirely the result of your actions.Remember, taking the responsibility is always a good option.
Develop your team, member by member
Someone once told me:
How to be 4 times more productive? Teach your 2 colleagues to be 2 times more productive.
This sentence really hit home.
Educating your colleagues is a key responsibility of a leader. As a person in charge, you shouldn’t aspire to be a programming genius anymore - you just won’t find time for it. It will be easier for you to scale up by teaching your people, developing their skills and helping them solve more and more difficult problems. That way you will be able to encourage your colleagues to test and implement new ideas. Every hour devoted to the team will result in higher efficiency and better results in the future.
In my own experience, the process of conducting code reviews in the team helped a lot. I was able to effectively share knowledge with colleagues and implement good practices. I suggested solutions, but was also ready to be convinced when someone provided good arguments for their point of view. I worked on building competences in the team so that it would be able to solve problems on its own. At the same time, I myself learned a lot and I was able to pass this knowledge on.
Remember that personal development does not have to focus strictly on technical aspects. It is also worth mentioning other areas in which the team can be developed. Think about, for example:
- Conducting a demo in front of a client can improve your confidence and presentation skills.
- Help in building a sales offer will let you take a broader look at the software development process.
- Analyzing the requirements with the analyst and the client will provide a deeper understanding of the reasons for creating a given system.
- Participating in recruitment / conducting retro / appearing on show&tell will give you the opportunity to test yourself in a different role than usual.
Any activity of this kind can help your team grow.