People tend to critize developers a lot, but it is not (always) their fault when something goes wrong.
I experienced recently very bad adventures with leadership… not me as a leader, but me as a follower.
After years and years as a software developer, and a few small experiences in leading interns and a very few software engineers, I would like to draw up a list of advices to beginners / young leaders, not only in software engineering but in overall.
Embrace your responsabilities: do not avoid (or try to avoid) your responsabilities, embrace them! You are a leader and have the greatest place in a team: manage your team as an orchestra conductor, and make people enjoying their work and making them happy! Leader responsabilites are big, but to motivate and see your followers happy is a great fuel to power days.
Be sincere and confident in yourself: it is ok to say “I don’t know”, or “I am not sure”, but be sincere with it. Too much confident is bad like too less confident… Find the right balance! Also, if you are not confident in yourself, the people for whom you are responsible will not be confident in you either.
Do not be afraid to communicate a lot: the worst thing you can do in being responsible of people is to let them alone in the dark, which could lead to conflicts… Trust me, I know a lot about this! However, even if “too much communication is better than too less”, please try to avoid to program a lot of meetings for nothing.
Take news of people you are leading: some people hesitate to express their feelings about something, or to ask a question because they will feel stupid about it, so do not hesitate to take news at least once a day (during dailies for example).
Do not hesitate to express your warnings and feelings: if you see something weird, or do not feel good about something with the people you are leading, do not hesitate to discuss about it as soon as possible in order not to aggravate the situation. This is important, as a people with a bad mood can propagate (quickly) the mood to everyone else in the team, which could create another issues and conflicts.
Be diplomatic, even if the situation makes you angry: anger and violence have never been the solution to anything.
Trust your team: even if some employees are slow or whatever, it is important to let them understand you can trust them. People learn, and improve themselves in making mistakes, so let them making mistakes. Just try to avoid to keep repeating the same mistake again and again…
and now the most important one: