Aspiring team lead?
Six tips on how to meet deadlines and develop your team
When I became a team lead for the first time, I started going to lots of conferences and reading deep books on team management. I was reading all about what I should be and how I should develop, but it was still not clear to me what exactly I should be doing on a daily basis. And, quite honestly none of this was really of much help to me back then.
It took me multiple mistakes and quite some time before I eventually figured out what was preventing me from getting things up and running and improving my performance. As a result of my experience, I put together some tips for my peers and had the chance to share them at Saint Team Lead conf a few months ago.
I wish I had had something like this when I started my career as a manager. It would have made my life so much easier. So, my hope is that it will help you too.
The tips I’m going to share are likely to be of most help to junior team leads. So, let’s get started!
Back when I was a developer the understanding of what was expected from me was easier. I made features, fixed bugs (and doubtless made some too), wrote tests, and so on. It was always clear to me where I was doing well and where there was room for improvement.
The first challenge I faced in my position as a team lead was lots of diverse work (I think this will be familiar to everyone concerned): very small tasks on the one hand, and high-level tasks on the other. Then there are the tasks that are rare or even one-off, and others that are routine in nature — all at the same time. Not only this, but the industry as a whole lacks clear understanding around the team lead’s role, and the functions often differ widely from one company to the next.
All this got me wondering: “How was my manager really ever going to know whether I was a good team lead or not?” The best option is to come to an understanding on this, setting the parameters right from the start, without waiting for a problem to arise. So, here is my first tip.
Tip 1: Reach an understanding with your manager
Fail to do this, and it may soon become all too clear that you have different views as to which things are important and for what the team lead should be responsible for. The outcome will be that assessment of your work may seem to be, or even worse actually be, biased.
What do you need to reach understanding on? For myself, I see the team lead’s responsibilities as split into three parts.
- Product and project work. This is the part of the work which affects business directly i.e experiments, features and projects.
- Technical aspects. Oftentimes, a team lead is a former engineer/developer/tester and is responsible for the technical component which, in fact, also affects business.
- Team. The quality of teamwork has a strong influence on how fast a business can grow and be scaled.
How to know what your manager expects from you in each area of responsibility? The answer is quite simple:
- Write down a list of important projects; and define goals and indicators in areas for which team lead is responsible in your organisation.
- Discuss them with your manager. They will more than likely add, or remove or calibrate something.
- Formalise the understanding reached (it doesn’t really matter how: write it down on paper, in Google Docs or using your internal tool. The main thing is to formalise).
- Do not forget the need to talk on a regular basis: business requirements change and rapid responses require revising goals and arrangements (the frequency of your discussions will vary according to the objectives to be achieved).
The earlier you complete these steps, the more certain you are to avoid future misunderstandings with your manager.
Tip 2: Set up the main tools
The next challenge is the myriad distractions we encounter: problems with production, new bugs or product managers changing their priorities. On top of all this, there is a constant need to devote time and effort to progress towards the big goals I outlined earlier.
Before I learned the importance of focusing on the main things, I missed the deadline on one of my projects. There had been constant distractions like having to help somebody or fix something, and so on. After being interrupted, I sometimes forgot to get back to the main task I was working on, and there were all the other tasks in hand as well.
But when we missed that deadline, I knew things had to change.
The first thing I recommend you do is to stop. Don’t try to sort everything out in chaos. Second, figure out what helps you achieve targets and what is detrimental to your work.
These are the two areas you need to tackle first:
- Visualise the goals. By visualising I don’t mean staying in bed all morning dreaming about how you are going to complete the project and then celebrate. What I really mean is that each of the goals and arrangements needs to be presented in visual form: a dashboard, a graph, a table, etc.
- Deal with obstacles systematically: gather and manage/eliminate all distractions.
I’m going to explain this with some examples.
Visualise the goals
Differentiate things visually into important vs routine.
For example, there was a project named Redesign which needed to be completed in the third quarter. I placed this and other important projects in the “Important Projects” dashboard so as to track work scope, deadlines, current status and progress, I visually segregated it from others. Technically, this can be done quite easily: there are labels or something similar in nearly every task tracker tool (we use Jira). By generating a dashboard from tasks sharing the same label, for example, “Important project Q3”, important projects will always be visible.
Another thing was that we had an arrangement on a minimum number of issues being encountered by users in the important business component. Again, we visualised this. Two graphs were useful to me here:
- A graph of open and closed bugs which shows open/closed bugs ratio for last n days. It helped assess trends of increasing/decreasing numbers of bugs.
- A pie chart showing “issues by component”. This helped us assess how many issues we had in a particular component (reference business area) and to change focus at the appropriate time.
Yes, all these are merely numerical metrics. The criticality of issues and amount of work to be done are not obvious from the numbers alone, of course. Sometimes, a single bug causes more trouble than a dozen others. But these numerical metrics do help me assess the “magnitude of the disaster” and reallocate resources to where there is the most trouble.
Deal with obstacles systematically
Moving now to the second part: looking at detriments to my work.
I started by recording obstacles I came across in a week-long period and discovered they had two main origins.
First, there are new objectives which emerge at different points in the system. At Badoo, everyone can create tasks (for bugs and support) in Jira.
Second is, the priority assigned to such tasks as they are originated. The originator can specify that a task is critical despite us already having 20 other tasks with a higher priority.
I dealt with these obstacles in an organised way according to the following plan:
- Manage centrally. I changed approach regarding the response to tasks: I created a new filter to gather all new tasks containing components which were my team’s responsibility.
- Confirm the relevance of the task. In the new filter, we check if the task really needs to be fulfilled, or if it can be skipped (for example, perhaps it’s redundant). If the task is still relevant, we confirm it (we have set up a special “Approved” flag and associated button for this) and proceed to the next step.
- Calibrate the priority. Since the team is aware of priorities and backlog, we calibrate the priority of a new task with reference to the backlog as well.
- The task goes to the backlog. Our filter is either empty or it contains a minimal number of unseen tasks. At the same time, the backlog is sorted out and now contains only what needs to be done, and the tasks needing priority attention appear on top.
Bottom line: So far, we have set up tools, visualised goals and organised obstacle handling. Now we are able to see more clearly whether or not we are observing our arrangements, and this makes it easier for us to assess our performance. Another important point is that we can change focus and tactic in good time now since we are able to see where we are getting “carried away”, and on which important projects we are heading for failure.
Tip 3: Set up communications
Projects and tasks are now perfectly visualised and in order, but there is still something that’s nearly driving you crazy, and taking up far too much time.
This something is nothing but incoming information flows and constantly shifting context. The more of them there are, the more distracted you get. Leave your task to answer another message or attend another meeting and it can take 5–10 or sometimes even 20 minutes, some say, to get your mind back on the task in hand. The result is a huge waste of time and little time left to focus on what really needs to be done.
How can we avoid this? I’ve split the work on communications into two areas:
- Reduce incoming traffic by delegating and automating.
- Handle the remaining traffic more appropriately.
Far from contradicting each other, these can be combined quite well. But I would like to focus more on the second area because while it is not always possible to automate and delegate, incoming traffic needs to be managed here and now.
I’ve defined three goals for myself: stay on track as much as possible and not get distracted; miss nothing important and respond at the right time.
As to information sources, my top 3 means of communication are email, messenger and meetings. Let’s look at each one.
Set up your email
There is quite a well-known approach called “Inbox Zero”. I mainly followed this while setting up my email.
1. Remove all emails of absolutely no importance.
In my case, these were irrelevant mail-outs, floods, etc. I designed two marker questions for myself: “What happens if I skip this message?” and “Might I need this in the future?” If the answers are “Nothing” and “No”, then I set up my email to remove/delete such messages automatically. It is precisely that, removal, not archiving or disabling notifications.
Example: flood mail-outs.
2. Set up a section for what is currently unimportant.
This is a bit trickier. It concerns messages which don’t need to be read at the moment but might need attention in the future. I created one main section (naming it “Secondary importance”) and several subcategories within it: ”Jira stream”, “Autoupdate” and others. All such emails avoid the “Incoming” folder and get moved directly to the “Secondary importance”. It can be hard to differentiate “don’t need now” emails from “don’t need at all” emails, but this is where marker questions help.
Example: Deploy status auto-update
3. Split the important into blocks.
Only important emails get into the incoming emails list. I split them into two types: ”Urgent” and “Not urgent”.
— “Urgent”. It is obviously ok to respond to these urgent messages as we have already got rid of what’s not important.
Example: “Problem in production”.
— “Not urgent”. This is the most treacherous category of emails. Handling of such emails should be planned appropriately. This category differs from “not important at the moment” because mandatory tasks get into it most frequently. Many people (including me) use to-do lists (some can even be added to the browser as extensions allowing emails to be turned into tasks in a few clicks). If you don’t like to-do lists, you can use reminders in your smartphone.
Example: “We have a great idea. Let’s discuss it. What do you think?”
All this can be implemented by finetuning the filters, shortcuts and automatic actions available: “remove”, “skip incoming”, “create shortcut”, etc. All popular email services have this functionality in some form or another.
Summary: remove everything that’s not needed by setting up automatic removal and sorting by category. Handle what is left according to urgency. Respond to urgent things immediately and plan the work on what is not urgent.
Set up your messenger
The next big time-consumer is messenger. Here are just a few tips here I’d like to share.
- First and foremost, notifications should only be enabled for personal messages and reminders.
- Make sure your chat rooms/channels are relevant. Only keep those you are interested in or where somebody needs you. All the rest you can safely abandon.
- Set up push notifications. Once the first and the second points are observed, you will mostly receive notifications only when the information concerns you personally in some way.
- Don’t disregard statuses. They help you when you need to focus, for example, “Do not disturb”.
Set up your meetings
And, finally, meetings.
Tip 1: reminders. I imagine many of you use reminders and appreciate their value. What I’d like to share concerns their configuration. I have developed the following pattern: 24 hours/1 hour/5 minutes before.
- 24 hours before: this enables you to prepare the substantial part of your meeting material (content, questions, etc.) if for some reason you haven’t yet done so.
- 1 hour before: plan to do something or, instead, plan nothing for the nearest time if you know that you need to be at a meeting in an hour.
- 5 minutes before: don’t forget your laptop, charger, coffee, etc.
Tip 2: mobile calendar app. If you’re not yet using one, then you really must try one. Reminders in the form of push notifications have helped me multiple times by reminding me of an approaching meeting.
Tip 3: try to attend only meetings that are really essential unless you want to be swamped with notifications.
Using these hacks I reduced the time I spent on communications several times over. Tweak your communications appropriately and you will only get distracted by genuinely important things. At which point you can respond to those genuinely urgent things and plan for later what is not urgent. The result is fewer context switches and less time wasted, and more time and energy to focus on goals and plans.
What’s next? So, up to this point, we have made arrangements on goals, sorted out projects and operations, adjusted communications and freed uptime. But, of course, the responsibilities of a great team lead also extend beyond projects and tasks. Being a great team lead also involves effective team relations and team development. This is a very broad subject encompassing onboarding, coaching, development levels, delegation and many other things. I recommend starting with personal cards.
Make personal cards
Cards is a tool that ensures you have reliable, concrete data at your fingertips for decision-making in any situation, rather than relying on our intuition and memory, as many of us are used to doing. It helps you take all important factors into consideration when making a decision, and thereby helps you develop your people in an unbiased and timely manner. So, how do personal cards work exactly?
Start by creating one or several files (it doesn’t matter what they look like, the main thing is that you have somewhere where data can be input).
I would recommend starting with three sections: “Skills”, “Development Plan” and “Feedback”.
Firstly, list the skills required for high performance in your particular company. If you are experienced in doing this it probably won’t be an issue for you. Otherwise, it can be done collectively by gathering other team leads and brainstorming the matter together. If, however, you have no idea where to start, get hold of an off-the-shelf competency matrix and tailor it to your particular requirements.
Then you need to specify the various skill levels. It is enough to outline a few levels but then clearly define the differences between them.
Next, the various skill levels of each team member need to be noted. This is especially useful information for consideration in subsequent career-related decision-making. What do I mean by this? Imagine that you have John and Jack available to you, and a project, let’s call it X. Project X involves customer communications and a technical review. You remember that John has worked on such tasks before, while Jack has not. So, you can use cards to check your memory and see whose skills are more developed, and see whether a task like this will be more valuable to John or Jack from the developmental perspective (of course, there are many other things to consider. Not only developmental perspective).
Here is an example of what the skill section might look like in summarised form. Mine looks somewhat different due to its specificity, but see below the idea:
The card shows a list of skills and skill levels for a particular employee at different times, and also states what each level means. As you can see, the list does not include proficiency in programming languages, technologies, databases and other — rather the skills shown here are aspects of some tasks and near-working skills which help my team perform well.
Here is a broad-stroke description:
- what the employee is considered able to do at any specific point in time
- what tasks the employee is considered able to undertake, and at what level
- what areas of responsibility the employee is considered able to handle.
This should be formulated with markers and brief indications of verifiable experience. Bad: “Study component X best”, “Complete tasks Y well” (this is normally hard to verify). Good: “Complete QuickStart”, “Become the key person in charge of component X” (you will be able to tell from results if the goal has been met).
To my surprise, I’ve found that not everybody maintains some kind of cards system. Moreover, some dismiss this tool when they hear about it. Let me address the most common objections.
- The first objection to the use of cards is the one I used to have myself: “I can remember everything!” Up to a certain point in time, I believed I was able to keep all the details in my mind because I just can — I’m a team lead, after all! But inevitably the number of skills, development plans and areas of responsibility grew with each additional team member. The level of responsibility you have as a team lead is too high to rely solely on your memory and intuition. It got to the point when I realised that and that’s why I began to use cards.
- “Cards is too complicated!” The response to this is quite simple: so, don’t complicate! Don’t list too many skills or produce a 25-page development plan for every employee. Limit the information to essentials.
- “Keeping cards is too time-consuming!”. I decided to find out for myself. Of course, I was not using a stopwatch, but I estimate that the total time I spent on the whole five-strong team was around an hour per month.
- “People’s growth can’t be formalised!”. I agree that it’s impossible to describe personal growth formally, being such a multi-faceted and very complex process. But cards really helps me take a bit more of a deliberate approach to it. Again, this tool is supposed to help, not to replace the whole work.
It’s one thing when you are only responsible for your own work trajectory, but it’s quite different when others depend on you for their growth and career paths. With cards, we are better able to make unbiased decisions. We move away from decisions that sound like, “This should be OK for Jack” but rather developing people deliberately and purposefully, with the use of concrete data.
Taking of which, data can be recorded both at any given time to reflect the current status and examined historically to identify trends. Indeed, this approach takes very little time a month but adds a lot of value. The cards tool can also be upgraded when necessary or desired.
Tip 5: Feedback — adjust one-on-one meetings
One-on-one meeting is a tool that is as important to a team lead as any other tool. I’m going to describe the format here, not the content (i.e. matters for discussion, etc.)
Anyone using this tool needs to take it seriously, otherwise, employees will think that you’re not particularly interested, that the meeting with you is just an informal chat. Of course, if this is the case, they are unlikely to open up about problems (which will show up at the most inappropriate moments), their trust in you as a leader will diminish, and their career paths will be muddied.
I would suggest the following practices for a deliberate approach to one-on-one meetings:
- In the period between your 1:1 meetings, make regular notes of feedback you want to give the team member when you next meet (of course if the feedback is not urgent).
- Refresh your memory before each meeting (personally, I have often only been able to recall all the feedback thanks to my records).
- Give the employee the opportunity to speak first (you are in a strong position in the conversation, you know what to say and how to move forward, etc., so if you speak first, the employee may get confused, forget to tell you something important, or might then be unwilling to).
- Focus the discussion more on what is important to the employee. Remember that a one-on-one meeting is primarily the employee’s chance to speak. It provides a guaranteed — though not one and only — opportunity to discuss something with their leader face to face.
- Record the outcome (this might be an important reaction to some feedback or an arrangement).
- Personalise the frequency of the meetings (different people require a different number of such meetings, so it makes sense to ask the employee if the frequency is too high or low for them personally).
- Don’t complicate (as for cards, there is no need to record absolutely everything, otherwise what is a useful tool becomes a detriment).
For a team of 5 people, I spend an average of no more than one hour per month on organising one-on-one meetings (not counting the conversations themselves).
So, now we come to Tip 6. At this point, we have covered the importance of well-organised tasks and communications, team development and a tool for recording feedback. Now it’s time to talk about your own personal development.
Tip 6: Plan your own development
I’m sure, as a team lead, you understand why you need to develop. Let’s talk about techniques that will help you in that.
- Allocate time for development. For example, there is an exercise called “No meeting hours, no meeting day”. This refers to the time you dedicate to getting yourself acquainted with new approaches and practices. At first glance, it may seem that you should be using this time to fulfil your daily duties; however, if used appropriately for self-development, this exercise will boost your daily performance and productivity.
- Create a card for yourself. Take your skills list, for instance. Of course, your skills will be different from those of your team members. Run your skill list through a verifiable experience filter to define your weaknesses honestly.
- Ask your manager. This is a quick and easy way to get a different perspective. Your manager can give you highly valuable advice as to what you should be working on, and how you can continue to grow.
- Do training courses. The IT management industry is developing all the time so you are certain to find courses that suit your preferences and needs.
- Add new information channels. It’s important for a team lead to develop both in management skills and in other areas: product, business, marketing, psychology, etc. This helps build background knowledge and improves the quality of decision-making. Check out examples of such channels listed below.
- Ask yourself from time to time how much you have grown, what new tools you have started to use, how your attitudes have changed, etc. If you are not used to engaging in regular self-reflection, use a reminder tool to help you.
All the interesting online resources that I use are too numerous to be listed here, but here are just a few:
- Medium: Business
- Medium: Marketing
- Harvard Business Review
- Do you know any interesting online resources we could use? Feel free to share them in the comment section :)
Each tip, in summary:
- Agree your goals and areas of work with your manager. This will add clarity and transparency to your communications.
- Set up your main tools in support of the goals you have set. This will help you stay focused on the most important things.
- Set up communications. This will help eliminate constant shifts of context and save time.
- Make personal cards. This will make each team member development process deliberate and add rationality to your decision-making.
- Adjust one-on-one meetings. This will make the tool more useful both to you and your team members.
- Plan your own development. This will bring you to a new level.
I’m not going to exaggerate the significance of these tips: clearly, merely putting these into practice is not going to be enough to make you a great team lead. But for me, it was precisely these tips that helped me bring order to chaos, get my workflow right and free up my time.
Thanks to these tips, I’m definitely more organised and deliberate now. With this part of my work arranged efficiently, I was able to pay more attention to other things: processes, relationships within the team, knowledge management, etc. But that’s another story.
Thanks for your time!