It’s usually better to learn from others’ mistakes when possible. Today I list the top mistakes that I either made myself, or saw others make when leading teams for the first time.
1. Assuming you need to be the smartest. As a leader, you are expected to give advice and coach your team members. However, this does not mean you should know all the answers, have the highest technical skills or be the most experienced in every area.
You can and should give direction, but you don’t need to understand all the details of every technology your team is using. Your job is mainly to let your people be the experts in their respective areas, helping them grow and utilize those skills most effectively.
2. Setting incorrect priorities. In most cases, you will be trying to keep too many technical duties when performing this role for the first time. It’s important that you quickly switch your focus from your own programming tasks to ensuring your team members are satisfied, and are able to work and grow without obstacles.
3. Trying to enforce or fake authority. Some new leaders assume they have to present tough behavior or give some strict orders, just so the team can see who’s the boss now. Others think they should appear as being always right.
Neither of these will help in building authority. As a beginner, you need to remain humble, honest and respectful. Over time, after doing a ‘good job’ in the new role consistently, the results shall come.
4. Worrying too much – or not enough. In the first few weeks it’s probable that you will be especially concerned with any project risks that you see. After all, nobody wants to start with a failure. You may also be thinking other people don’t trust you as a beginner, or that some are even plotting against you.
However, this approach may lead you to trying to control things too closely, getting too stressed out with small mistakes of your team members, and letting the emotions takeover.
On the other hand, you obviously don’t want to appear like you don’t care about the results, as it will be demotivating for the team and you may build a bad image for your customers. As usual, finding the right balance is crucial to have a good start in the role.
5. Making decisions with full information only. As a developer, you were probably used to doing thorough investigation of solutions before choosing to go with one. As a leader, you will have to make many quick decisions (not just technical ones) to avoid holding off important work.
Don’t try to do extensive research for everything. Review what you know now, and take the risk. You can’t avoid mistakes in this job anyway.
6. Not delegating enough. Desire to control every aspect of your team’s work will quickly turn you into a micromanager that all developers want to avoid. Don’t assume you have to make all the technical decisions now that you’re a team lead.
For many it’s also natural to be afraid of appearing ‘lazy’ when asking others to perform tasks you used to do until now. Don’t fall into the trap of thinking this way. In fact, if you try to keep all the duties you had before, it’s likely that your leadership duties won’t receive enough attention.
7. Ignoring education. Leadership skills are just like technical skills in that they need to be learned. You use different methods for that of course, but it’s still something you have to invest time and effort to do well.
For some people it will come naturally, others will require a significant investment and a lot of practice to introduce new behaviors, but everyone should be actively growing such skills. If you like to read blogs, add a few ‘soft’ ones to your subscriptions list. Put some books on the topic into your reading queue. Look for leadership conferences or user groups if you’re more of an ‘offline’ person.
8. Getting discouraged after initial failures. You will run into problems, that’s for sure. Maybe you were the ultimate problem solver as a developer, but in this role not all of them can be solved just with time, focus and technical knowledge. In many cases the results of your decisions – and the learning from them – will come much later.
It tends to discourage a lot of beginning leaders and they decide to fall back into technical positions, feeling much more in control there. That may be premature and often a better approach would be to retrospect on the failure, bite the bullet and try again.
9. Defending your position. So far you may have felt you had a secure job. You were a solid developer with many alternative opportunities in case something didn’t work out.
Leadership positions are obviously less secure and it might leave some people with a strong feeling of discomfort. If you embrace such negative thoughts, it may result in making wrong decisions just to defend your position, while under pressure from your customers or managers.
10. Not caring about your customer enough. Having said the above, putting the right level of effort into building relationship with your customers is still crucial. After all, the business value that your team is producing is the main reason for its existence.
The key here is finding the right balance between protecting your team from interruptions and pressure, and remaining open to changing customer needs.