Ask HN: How do you lead teams? Let's exchange team management culture hacks
I want to learn how to lead effective teams and encourage a positive culture. Are there any pearls of wisdom or utilities to help with this?
How do you motivate a group to take ownership, be creative and produce their best work?
Unfortunately not everybody is awesome and I've not been lucky enough to choose the people I have to work with -- in fact I've taken the worst employees to see whether I can turn them around. When dealing with less motivated or incompetent developers, how do you treat the organisation problem created by scaling the micro-management that appears to be required to get them to produce useful work? Is there a laissez-faire way of doing this... Can I empower them to be more conscientious? If in the worst cases I have no choice but to try to get them fired how is this done in the least negative way?
HN, please give me your team management culture hacks! :)
4 comments
[ 8.5 ms ] story [ 465 ms ] thread1. What you did yesterday?
2. What you'll do today?
3. Are there any impediments in your way?
Give credit - If any one even mentions an idea in passing, etc and it is later discussed, that mention should be attributed. 'A few weeks ago Mike suggested RabbitMQ, we did some research and we've decided this is the best solution'. Of course for obvious good work praise should be given.
Celebrate team effort - There is a problem in production, your developers are working hard to pinpoint. Once the dust settles and you are sending out your final status email, be sure to praise the team effort, include names (be sure to include anyone that even had the slightest impact, seeing their names together reinforces the team)
Other obvious ones - sufficient funds for tools, hardware, training, books etc. code reviews, personal growth plans, frequent employee performance reviews (6mo).
motivation is tough, sometimes people need a little peer pressure. Give an unmotivated developer a visible high priority, small(!!), project. Something you know is a homerun. Email the stake holders and CC the developer explaining the developer is on it and it's their #1 priority. Give them plenty of time, but just knowing that people are depending on their work helps some people with motivation.
Loyalty is everything. The first team that I took over was a team that I was promoted from within. The team I was working on was stalled because bluntly they were not very good candidates for the job they were doing. I was the one person making progress and I was making significant progress at that. This was the first software development contract my company has obtained, everything rode on it and the president/owner of the company worked in the programming pit with us, which is how he knew I was making progress. So I ended up managing a group of people who were my close friends and I desperately wanted things to work so that we could all keep our jobs. I extended major loyalty to my team members and was amazed at the depth of loyalty and even fanaticism they returned to me.
Projects are like jigsaw puzzles, they need the right technology and people to fit together to make a greater whole. During the interview process and the continuing during the job I was always working to have a greater understanding of what my employee's goals were and what their path to self-actualization was. When I inherited people who has no interest in self-actualization, in being greater than they were I let go. If you can understand how to plug people into your project in a way as to provide them with a path to their self-actualization your team will follow you into hell.
Be heroic. Through away your job description because it doesn't mean crap. If you are a manager, particularly a technical manager, you personally own the entire project. Your employees are there to help you out. Do what ever you need to make things work within the bounds of ethics. If the team needs you to personally wash their cars in order to maximize the progress of your project then you get off your ass and you wash their cars.
Be a friend and ally to everyone. Most projects have not only technical bottlenecks but political bottlenecks. Even if you are the god of software development, it is not enough. Often being a god of social engineering will get you much further. Be Santa Claus and freely shower the people and organizations you interface with with your technical gifts and screw the fact that this is never a part of anyone's job description. Great managers only care about overcoming the barriers that are in their way. The fact that those barrier are bullshit is irrelevant, the fact that the domain of those barrier are not with your job description is irrelevant. When every single person inside your team and interfacing with your team sees you as a powerful ally and a friend then you can make miracles happen.