There has been a while since I posted something relatively personal. In recent time I've been working as Technical Leader for two projects (for one maybe partially thanks to another great team member). Being TL might be also justification on why I did not post that much, but probably it is not justification, it is just prove of my bad time management.
In this blog post I would like to talk about people motivating and leading team as I have much of this activities now. My vision could be very weak in this respect, but I have it clear in my mind and I would like to share it with you.
I did some research on who is tech leader and I also read couple books on managements and have some ideas from them. I also had some conversations inside of the company on this assignment. So I know there is lot of stuff and information we can read/share. There are huge set of different opinions on this manner and most of them are correct. So I just express what I was able to compose withing allocated time for this blog post.
In manner of couple of months I'll see if my attitude and actions are correct. I will definitely share this with you, dear readers.
Here is how I see goal of good Technical Leader:
TL's goal is to ensure that each team member (including him/her-self) is happy with work they do and that they constantly grow their professional skills, therefore establishing overall success of the project.
I believe it sounds differently from what you can read from other sources, but there are dozen of different definitions of this role, so above one is mine. To be a good technical leader you might need to take a lot steps before you succeed.
But unless people believe in you, and have strong trust in you, you might not be able to do much.
It might be difficult to build trust, but it is doable. Here are my thoughts:
1) Explicitly show your desire to work for the projects success thought the prism of everyone's happiness.
2) Work very hard on learning new stuff each day, make sure people know that you are very strong in your knowledge.
3) Stand for the people in your team, always show respect, always treat them as the best developers.
4) Listen to people, ensure they know that their ideas are valued.
5) Show that you try to understand needs of each person you interact with.
Here are some things I do now:
1. Ensuring that people don't have anything on their way to complete tasks.
2. Giving clear tasks and establishing clear expectations, especially for the people that are not highly motivated.
3. Acknowledging developer's work. So if some of the developer's did great job I'm sure everyone should know otherwise it just dies with closing task in tracking system.
4. Coaching on technical stuff when it is appropriate.
5. Giving people tasks they like and tasks that challenge them. Also if people don't reveal much interest I just hope that next task they pick up will be something they will like.
6. Inspiring developers us much as I can.
7. Showing personal responsibility and technical skills as an example.
Here is something I would like to improve:
1. Make sure everyone feels high responsibility for the work they do.
2. Make everyone believe in project and is really willing to make it happen.
3. Make the team to be an extremely collaborative, self-defensive, self-organized, motivated and oriented to success.
Here are also some things I would like to try:
1. Build table of everyone's weak and strong areas and try to use it the best.
2. Find best tasks for the people so they learn and get excited about working.
Thanks for reading this blog post!