Philipp Hauer's Blog

Engineering Management, Java Ecosystem, Kotlin, Sociology of Software Development

Leveling Up in the Management Skill Tree

Posted on Jun 14, 2021. Updated on Aug 12, 2023

Management is not something you “just do intuitively” and it will work out by itself. Instead, management is a craft that you can - and should - learn. It’s about knowing the right tools and approaches and learning skills that help you to lead a productive, happy and motivated team. In this post, we visualize these skills as a “Skill Tree” like in a video game. Have a look. It will be fun and insightful!

Leveling Up in the Management Skill Tree

Management Skill Tree

Management Skill Tree

Management Skill Tree

Preface

  • Visualizing management tools as a “Skill Tree” like in a role-playing game is fun. It’s a nerdy way of looking at management skills. And I like the notion of “leveling up” those skills.
  • Hence, the Skill Tree is not supposed to be accurate. I know it’s not a tree in the mathematical sense. The order, arrows, and skill distribution over the tiers are not reflecting a hard precondition but should be read more as a priority and differentiation between the basics and more advanced topics. Again, this way of visualization is about fun.
  • Not every item in the tree is a “skill” in a stricter sense. Sometimes it’s a tool, technique, topic, notion, mindset, or something you just do. Some are easy to implement some are hard to establish.
  • The Skill Tree focuses on people management. Other management topics like delivery, processes, organization, career ladder, information exchange, and project management are not covered.

Description

The Skill Tree is an overview of the different topics relevant to leading people. Some skills are only simple actions that you can just do, some skills are huge topics where entire books are written about. In every case, this is just the starting point for your journey. That’s why I focus on a brief description and pointing you to further resources that you can use to dive deeper into a topic.

Let’s take a look at each skill tier.

Tier 1

1-1 Toolkit

Management Skill Tree - Tier 1

Management Skill Tree - Tier 1

I wrote a post about Team Manager’s Toolkit for 1-1 covering all items of the skill tree in tier 1. That’s why I will only describe them briefly here:

  • Catch-Up 1-1s. Have frequent catch-up 1-1s with our report where you encourage them to bring up topics that they like to talk about. See also the template for efficient 1-1s.
  • Feedback and Development 1-1s. In addition, have less frequent but bigger 1-1s dedicated to feedback and development of your report. Talk about long-term and short-term goals here.
  • A questions catalog for each type of 1-1 provides a good foundation to get into a conversation.
  • Shared Running Record. It’s important to document the content and agreements of important 1-1s. It should be shared with the report, so they can check it out every time. It should be running, which means that you add the summary of the latest 1-1 on the top. This way, you have a complete historical record in one document.
  • Performance Reviews and Skill Matrix. Once a year, I have a dedicated 1-1 just about the individual performance. A skill matrix is a useful tool here.
  • Getting To Know You 1-1. For new reports, it’s helpful to have a dedicated 1-1 with a certain questions catalog.
  • Employee Journey Maps are a useful tool to reflect on the past time and learn more about a report’s motivation.

Tier 2

Management Skill Tree - Tier 2

Management Skill Tree - Tier 2

Dialog Skills

  • Feedback Rules. It’s about the basics of giving feedback: I-messages, Observation-Impact-Request-pattern, referring to behavior instead of traits, avoiding generic statements, and referring to a concrete situation and behavior. My blog post “Code Review Guidelines for Humans” explains them and applies them to code reviews. Moreover, Jacob Kaplan-Moss' post “Three Feedback Models” is a good overview of different feedback approaches.
  • Mastering Crucial Conversations. I highly recommend the great book “Crucial Conversations”. It explains how to deal with your own emotions, how do you make a conversation safe, how to share your view or a tough message and how do you explore the other’s view. It contains practical tools like mutual purpose, contrasting, listening skills, and STATE.
  • Non-Violent Communication. A good addition here is learning about the rules of Nonviolent Communication by Marshall Rosenberg.

Appreciation

Surveys showed that many employees wish more recognition from their direct manager and that this would improve their motivation and morale.

I believe that appreciation is one of the most powerful things to do when you want to motivate your team and make them happy. Many people are quitting because they don’t feel appreciated by their direct manager. And the best is: It’s easy to do and you can do that every day.

  • Habit of Positive Recognition. Every time you see an employee is doing something good: say it! Or at least take a note, so you don’t forget it and mention it in your next 1-1. It’s important to make a habit out of this. Build up “observational muscles” (Camille Fournier) and look for strengths. Positive feedback also makes your reports more likely to listen to you when you give critical feedback.
  • Continuous Feedback. Give feedback timely and frequently. There are many opportunities for feedback: just in the situation, in your next 1-1, daily stand-up, or retrospective. But give corrective feedback only in private.
  • Involve the team and give room for peer appreciation. Peer feedback is valuable as it raises new points that you might not know. It also supports a positive team atmosphere. However, you have to create the room and the opportunities for the staff to share recognition.

Self-Management

  • Tools for to-dos, notes, and the calendar. Managers have to deal with many different tasks, information, and meetings. Fortunately, there are powerful tools that make you efficient and prevent you from forgetting anything. For me, that’s Asana for to-dos, Notion as my notebook, and a proper calendar client. For further details about some tools, check out my post about Team Manager’s Toolkit for 1-1.
  • Stress Management. A manager’s job can be stressful: Many subsequent meetings without any break, many different tasks that have to be handled in time, people conflicts, and expectations from your manager, stakeholder, and team. Fortunately, some tools can help you to build stress competence: instrumental stress management (influencing the stressors), mental stress management (changing thoughts that exacerbate stress), and regenerative stress management (which influences stress reactions; e.g. meditation). The German psychologist Gert Kaluza wrote good literature about this. In general, I can recommend attending a workshop about this important topic.
  • Protecting your Focus and Time. A manager’s day contains many interruptions and context switching: chat messages, e-mails, meetings, and colleagues approaching you. It’s hard to focus on a task for a longer period. Therefore, it’s important to learn how to manage and protect your focus and time. Some actions are blocking time in the calendar for focussed work, defragment the calendar, or turning off desktop notifications and checking messages in a dedicated time slot. I wrote a blog post about getting more uninterrupted time at work.
  • Delegation. If you try to do everything yourself you will eventually drive crazy and demotivate your staff. So delegating tasks is a powerful tool to reduce your workload and develop and motivate your reports. It’s tricky to learn which task you can delegate (frequency-complexity-matrix) and if or how often you need to check and follow up on a delegated task (scale of delegation and control). I like what Camille Fournier and James Stanier wrote about delegation in their books “The Manager’s Path” and “Become an Effective Software Engineering Manager”. Check them out for details.
  • Say No. It’s essential to learn to say “No” - to peers, your reports, your manager, and stakeholders - and don’t feel bad about that. It’s about protecting yourself from burning out.
    • But there is a lot to learn about when and how you say “No”. It starts with being empathic and constructive. Besides, there are different strategies: “Yes, but later”, “Yes, and”, “Help Me Say Yes”, creating policies, appealing to budget or prioritization. Check out “The Manager’s Path” for more.
    • Joy Of Missing Out (JOMO). Say “No” to FOMO, the Fear Of Missing Out. Feeling tempted to read every news at work and attending every update meeting can be a huge time sink. If an update is important, it will reach you anyways.

Tier 3

Management Skill Tree - Tier 3

Management Skill Tree - Tier 3

Mentoring and Development

  • Understanding Motivation. One of your main tasks is to keep your team motivated. Therefore, it’s crucial to understand what drives people - and what doesn’t. The standard literature for this is Daniel Pink’s book “Drive”, where he explains the three pillars of intrinsic motivation: autonomy, mastery, and purpose. For further details, you can read his book, watch his TED talk or check out my blog post about motivating a team of developers where I apply the pillars to software development.
  • 1-1s for Feedback & Development and Performance Reviews. 1-1s are the most important tool when it comes to mentoring and developing your team. In a 1-1, you can find out what motivates your report, what their goals are, and how they can progress towards their goals. Also, giving feedback on performance and pointing to areas of improvement are ways of developing a team member. In my post about the 1-1 toolkit, you can find further details about those meetings.
  • Delegation. We already talked about delegation in the context of self-management. Besides, delegation is a great tool to motivate and develop your reports as it addresses two pillars of motivation: autonomy (they do the work in a self-guided way), mastery (they can practice their skills and learn new ones if you delegate something that you used to do on your own).

Team Building and Atmosphere

  • Trust. Surveys (1, 2, 3) have shown that employees who feel trusted by their manager perform better, often go beyond the role expectations, and are less likely to leave the company. But how can we built and show trust?
    • First, we need to build a relationship by getting to know each other. Trust must be grown over time. 1-1s and on-site Getting-To-Know-You-Meetings are a good starting point.
    • Trust is rewarded with trust. The more you give, the more is returned. For instance, if you show your vulnerability and leak your personality, you give a trust advance to your report. Your report will likely reward this with trust in return.
    • There are some conversation techniques like mirroring, labeling and summaries that can support creating trust.
    • You should be an enabler, not a micromanager. Micromanaging kills trust. Delegation is an important key to showing trust. But it’s tricky as it requires a certain tolerance for mistakes while ensuring the quality of the result.
    • Monitor outcome, not working hours.
    • Information sharing.
    • Investing in the employee’s development.
    • A good starting point to dive into this topic is the post “Want Your Employees to Trust You? Show You Trust Them”.
    • Trust is a self-fulfilling prophecy. Check out the Golem effect and the Pygmalion effect.
  • Psychological Safety and Error Culture. “Psychological safety is a belief that one will not be punished or humiliated for speaking up with ideas, questions, concerns, or mistakes” (Amy Edmondson). Without Psychological Safety, there will be less innovation, bold ideas, and correction of mistakes or misjudgment. A famous survey at Google showed that psychological safety is the foundation of successful teams. Good teams talk openly and continuously about errors and how to reduce them.
    • The manager’s behavior is crucial here as they act as a role model. They can build safety by making explicit that there is uncertainty ahead, acknowledging their fallibility, and expressing curiosity. In general, mistakes should be embraced and seen as opportunities to learn.
    • A good starting point to dive into this topic is the TED talk “Building a psychologically safe workplace” by Amy Edmondson. The article “Building psychological safety” is also worth a read. Camille Fournier’s Book “The Manager’s Path” also also some good advice on how to correct a culture of fear.
  • Culture of Mutual Appreciation. Feedback should not only be exchanged between you and your report. The peer feedback is sometimes even more valuable as they work together every day. Therefore, establish a feedback culture in your team. So the whole team gives feedback to each other frequently. You, as the manager, should act as a role model and provide a lot of feedback and appreciation. Retros and dailies are good opportunities to praise. For instance, our daily stand-ups start with the question “What made you happy yesterday?” which often brings up some praise for a teammate.
  • Complete Peer Feedback is a dedicated meeting where all team members come together and share their appreciation and growth potential for their teammates. It’s a simple but powerful thing that you can do once a year. For details, check out my blog post about this topic.
  • Team Building Events are valuable for socializing and strengthening the relationships in the team, which is important for building trust. Plus, they can be great fun and events that everyone keeps in their memory. Those events can be fun activities or meetings where you discuss your collaboration or exchange feedback (like the Complete Peer Feedback).

Tier 4

Management Skill Tree - Tier 4

Management Skill Tree - Tier 4

Remote Leadership

Jay Signorello wrote one of the most concise and best posts about managing remote teams. Check it out, it’s great and a excellent starting point. Besides, I wrote a summary of the book “Effective Remote Work”. In addition, I like to highlight a few skills that are important to me:

  • Trust. Trust is so crucial for remote leadership that I placed it here for the second time. The aspects the last section pointed out are still valid. They are even more important in remote setups.
    • Once again: Don’t try to control and check if your staff is working. Instead, ensure that your staff is motivated. Motivated people don’t need to be controlled - and shouldn’t be. Assume good intent. Monitor outcome and not the working time. Be an enabler and not a micromanager.
    • Trust, and a relationship have to be established and grown. That’s easy when you work co-located: You have many touchpoints and opportunities for face-to-face chats at the coffee machine or during lunch. Most of the relationship-building happens between the meetings. If your team now switches to a remote setup (e.g. due to a pandemic), the conditions for a trustful remote work setup are already fulfilled because you already built up the trust when you worked on-site. Contrary, it’s trickier when you are 100 % remote. In this case, it’s even more important to foster trust: Dedicated meetings for getting to know each other, opportunities for socializing (during work time), on-site team events, virtual team events, and a higher frequency of 1-1s.
    • It even starts with the small signs of trust like turning off your virtual background.
  • Goals. Setting, documenting, and communicating clear goals is crucial. This way, the remote worker knows in which direction they should head. This applies to both personal and product goals. Moreover, it makes sense to check in regularly about the progress.
  • Structure and Updates. Having clear rules and structure for working is important as they provide guidance and orientation for the remote worker. They also offer touchpoints for you as a manager to catch up and synchronize with your report or the whole team. Talk about those rules in your team, and make sure you communicate and document them. Here are some examples:
    • Agree on coordination hours (e.g. 10 am - 3 pm) where everyone should be available (e.g. for meetings). But keep this time frame short.
    • Each coworker writes a check-in message when they start to work in the morning (“Good morning, team”) and a check-out message when they stop working (“See you tomorrow”).
    • Have a daily stand-up each morning with the whole team.
    • Have regular catch-up 1-1s where you get in touch with your report.
    • Depending on the software development methodology, you might already have many regular meetings, a ticket system, and a ticket board that structures the daily work and monitors the team’s output.
  • Embrace Written and Asynchronous Communication. When leading a remote team, you have to revisit how you deliver information. This ensures that all workers (if remote or not) are equally informed and have access to the same information. Here is what you have to do:
    • Focus on documentation. Document decisions and actions and make them available for everyone. During meetings, write a record in the company’s wiki or send it via mail afterward. Record status update meetings. In tickets, everyone should document the steps to solve an issue so everyone knows what was done.
    • Focus on asynchronous communication. Working remotely enables your reports to work more focused and have longer stretches of uninterrupted time. That is great, and we should foster this by relying on asynchronous communication so they can read updates or answer questions on their schedule and don’t miss anything if they are sick or on vacation. Another concrete action is to turn status update meetings into mails. Moreover, as a manager, you should not rely on chat or the daily stand-up to deliver updates to the team. Instead, use mails.
    • Further information can be found in my blog post about uninterrupted time at work. In this post, I also cover a chance in culture and mindset within the company that is required to make remote work successful.
  • Socializing. Socializing is always important for building a team but needs even more attention when it comes to remote teams as you miss all the little opportunities for socializing that you have in an office (like the chat at the coffee machine or during lunch). Hence, you have to think about having more face-to-face time and time for socializing within your team. Some actions are on-site team events, social eating, and dedicated meetings for socializing during the work time (we call that “Kaffeeklatsch”, “Fika”, Coffee Time). You should also take your time to talk about not work-related topics in your regular 1-1s. Remote pair programming also has the added value of socializing.

Hiring

  • Writing Job Descriptions. A good job description describes the role, the company, and the working environment in an honest but attractive way. Remember: You are also applying for candidates. Start to think about the hard and soft skills relevant to the role. Next, describe briefly the tech stack, tools, architecture, the working environment, methodology, and mindset. That’s what most devs are interesting in. Moreover, point out the benefits that your company offers for the candidate. What are your unique selling points? Why should the candidate apply? And finally, list the steps of the interview process.
  • Interview Techniques.
    • A good interview starts with preparation: What hard and soft skills are important for the role? Prioritize them. Next, think about questions to test for these skills. Behavioral questions and situational questions are useful here. The STAR interview technique can guide you during the interview so you know where you have to dig deeper and follow up if a candidate’s answer is not complete or concrete enough.
    • For details, check out my blog post about leveling up in job interviews.
    • Moreover, I’m a big fan of creating an interview guide for each different role you are hiring. The guide contains a list of questions you like to ask and some space for your notes. It also lists the traits you are looking for, so you can use this as a checklist. This interview template saves preparation time and makes the interview more objective as you ask similar questions to the candidates.
  • Onboarding. Getting an onboarding for remote workers right is more challenging as you are not sitting in the same office anymore, where you see the newbie struggling or where it is easy for them to ask questions to you and the team. The following approaches worked well for me:
    • Scheduled daily 1-1s with their manager during the first two weeks.
    • Lightweight Kanban board with all onboarding tasks and documentation to check out. I use Miro for this as I have an onboarding board in Miro anyway. But Trello should also work. This way, the newbie can work asynchronously and independently.
    • Scheduled time slots for socializing with the team.
    • Having a team chat and encourage the newbie to ask any question there.
    • Having the first day(s) on-site is helpful to see the colleagues at least once in person.

Contribution

I took the idea of a Skill Tree from James Stanier’s great book “Become an Effective Software Engineering Manager”. I applied it to people management and what I believe are important skills for a manager.

Another great book is “The Manager’s Path” by Camille Fournier, which inspired some skills in the tree.

Further Reading