That's really targeted to individual contributors starting out. If they follow this, they'll be way ahead than they would be without guidance and. These tips put them in a good position to become a manager by co-optation as you become so useful to the team. Be useful. Communicate clearly. Maintain your composure and don't lose your head. Listen to everyone but make a decision and own it: if it's right, celebrate the team and, if it's wrong, own the mistake, shield them, and correct course. Get yourself out of a job daily: make sure to groom your team members to take your place. Delegate gradually and increase the complexity of what any team member does and increase your complexity by gradually taking things off the plate of your mananager. It doesn't make sense to have your manager do something you can do, so do it and let them do things you cannot do. Same goes for your team members.

Be in tune with how they're feeling. Ask them how they are. Observe carefully if there's something on their mind. Don't let an infection linger and if it does, drain the pus and treat it as soon as possible. Be on the ball every day to keep your team members: speak freely with them about finances. You want to have conversations with them before they start looking for another job and you want to establish a trusting relation so they can freely speak with you about what they're frustrated about.

Reduce information asymmetry to the best of your abilities. If you're in a meeting and they were not present, take notes and disseminate. Keep them informed. They'll have some of the most valuable input you'll have and they'll bring things you didn't see to your attention (code level, system level, incompatibilites, integrations, ideas). Get involved with the business side and involve them as well. You want to feed off each other: they'll make you a better manager than you could have on your own. Push them to be better. They'll push you to be better.

Never hesitate to state you fucked up. Establish that soon. They won't have a problem to do it after that. Always get to the truth. It will speed up everything, from a simple incident on a production machine, to correcting course on a project in a split second. It will save you all. Transparency.

Never be vague or cryptic or create an information void; it will be filled by the worst interpretation possible. Never say "Can we have a meeting at 1400?" (this causes stress). Always say "I'm having trouble understanding this part of this sub-system and I need you help to understand it better. What time works for you to have a chat about it?". The first may lead someone to think [insert the worst reason for a meeting they can think of]. Never do that; even when it's bad. Then again, I'm biased as I was trained in feedback and control systems/theory, so I see things in terms of desired state and current state and errors to be corrected. It makes conversations easier (our system produces some output and I'd like it to produce a different output, how can we improve that system to reduce that error). Put it that way to an engineer and you'll be amazed at how fast you could optimize while minimizing disagreable feelings: put brains to work, not thyroid glands.

If you're in an office environment or you make stints at the office, a great way to have "one-on-one"s is to get out of the office and take a walk with your team member. Just walk around town or something. You'll have conversations you would never have had if you were in the office. Just completely different conversations. Get to the truth every single time.

Always keep your promises and never promise what you cannot deliver. Always do right by your team members.

Always push to get your team members more of everything; there are many who will shy away from asking so make sure to be their voice. Never miss an occasion to give credit with "higher ups" and acknowledge the work of your team. As I said, be a shield: if there's a screw up, say you'll fix it. Don't get into details on "who" messed up: your team messed up therefore you messed up therefore you say you will fix it. If it gets down to chewing someone on your team, don't let anyone chew one of your team members. It's between you and your team member.

Be very protective of your team cohesion: get involved in hiring and get your team involved in hiring and filter like a motherfucker. Weed out anyone who is not fit to join your team. Always ask your team members to validate candidates. If you don't have a say in it and your team complains about someone, handle it as soon as possible: get very close to the person and train them to work well with your team, then ask for feedback from your team on the evolution of the new hire. Rinse, repeat. If they find it unbearable to work with the new hire and you couldn't train them to work well with the team, do whatever you can to get them out of the team. If not, it will destroy your team.

If someone leaving the team is unavoidable, hook them up elsewhere and look after them when they leave. Ask to be listed as a reference and praise them with future employers. I suppose you work with people who are damn good because if they're not, you would have trained them to be or pushed them out in the first place.

I keep in touch with people who have left (for reasons we could do nothing about) and send them things to improve their life (better job offers, information about new things they might be interested in).

Institutionalize everything. Make sure you're replaceable. Make sure your team members can do your job, then do something else (reinvent your job). Make sure they always see a bigger picture (if you're involved in sales an learn things, teach them to them. If you're writing copy, do that as well. Be sharing. Be useful.)