I accidentally went into people management as a developer with no prior experience and expectations. I've been into that position for the past 10 years. Below is a list of learnings that I have gathered so far. Please share your experiences. Junior developers, please share your expectations. We can learn more from each other.
Every person has their own pace. Be patient, respect their pace, encourage to be better and faster. In the past, I tend to get easily frustrated when a member of the team did not have a fast pace to deliver their work. I learned that by being more patient and providing non-stop encouragement, they become faster at their work without you noticing it. Deadline is still a deadline. But if we spend enough time to understand their individual challenge, we'd realise that it was something that can be fix.
Agile is a coaching process. Not a dogma. When we try to improve the agility of our team by implementing processes, we tend to strictly enforce them. Some people do need to time to adjust. I learned that by coaching and showing them the result of their own work, agile can help shape and improve their individual workflow, the results tend to be better and the developers tend to be more happier with themselves.
Attitude is more important, if not equally important, to the resulting code. When working in teams, people need to feel safe with the team members that they are working with. "Office politics" do happen in a small engineering team. I learned that by hiring people with good attitude with people, not necessarily an extrovert, will organically improve the dynamics of a team. An introvert can be a good team member. They just need to be understood. We don't have to give them special treatment. We just need to give them the attention and the space that they need to express themselves in their own way.
Problem solving is a mindset. Not a skill. There's many different school of thoughts regarding the ability to perform problem solving tasks. I learned that not everyone can be a problem solver. To teach problem solving, I learned that the mindset of an individual needs to be reset, for the lack of a better word. Good problem solvers, most of the times, does not have the right skill to solve it. They just know how to solve the problem. Encourage them to build that skill. Or ask for help. Asking for help is a skill IMHO.
These are the key learnings that I have gathered over past decade. Best practices in writing code is something that can be learned from anywhere in the Internet. But best practices in managing people is something else.
Share your stories. I would love to learn more.