I’ve been through balancing coding and managing teams for 15 years at many points: these are my secrets to managing a team when you still have to get stuff done.
1. Understand Your New Role
If you are a lead in any capacity your primary job is no longer to be the best coder in the room. Your job is to invest in learning the skills you need to effectively communicate and grow those you lead. Your words have the potential to sit with people for years, act accordingly.
— Laurie (@laurieontech) June 16, 2019
The same thing goes for designers, frontenders and backenders. You’ve spent years honing your skills becoming the attentive craftsman you are today. You value your skills and love the day-to-day work your job entails. Getting out of that mindset is hard, but it is necessary.
You will need to learn to:
- Delegate. Your team may not do things the way you do. They are unlikely to be as experienced as you are. But you must learn to trust them and occasionally accept appropriate compromise or you will always be the bottleneck.
- Be strict on recruiting. Develop a recruitment process that leads to having team members you can trust
- Mentor team members to get them to the standard you expect
2. Transition Gracefully
You’re not going to be able to slam on a Hugo Boss suit and never write a line of code or open a concept file ever again. You need to be realistic: this is going to be a busy period for you while you transition.
You need to set boundaries around what you’re able to do and stick to them. There will be plenty of tasks to fill your time up from dusk till dawn every day if you let them. You need to prioritise and decide what’s really critical for today and what can wait until tomorrow or even next week.
An important part of this is learning to manage your time differently.
3. Manage Your Time Differently
When doing project work you may have had a workflow like this:
- Start fun exciting new web build project
- Work on project for a week
- Release project
When trying to transition to managing a team, your workflow could look like this:
- Start fun exciting new web build project
- Spent 2 hours assisting a team member who’s broken the git repo
- Work on project for 20 minutes
- Create a job specification for a role you now need to fill
Join a call with a recruiter (wow that took longer than you thought)
Realise you’re now 2 days behind
Prepare sensitive communications to explain the delay to the client
- Work on project for 15 mins
- Join new project management call to explain why the project is late
- Now you’re 3 days behind. Fun project is no longer fun
This leads to you being sad, clients being sad, and an ever-increasing bald patch. What can we do to improve this?
Set realistic expectations with stakeholders. If you’re involved in any day-to-day project work, double any of the estimations of project aspects you need to work on and adjust deadlines accordingly. You’re doing 2 jobs and you need to find the time from somewhere. They’ll be angrier if you make impossible promises and underdeliver anyway.
Set up time boxes. Try and dedicate certain parts of the day to management tasks, and others to project work. Here’s an example schedule that has worked in some instances:
- 08:30-09:30 — Emails, standup with the team
- 09:30-13:00 — Project work
- 13:30-14:30 — Email catchup, Schedule any calls for this slot
- 14:30-16:45 — Project work
- 16:45-17:30 — Email catchup, communication to any stakeholders that tasks haven’t been forgotten, they’ve been scheduled in and will get completed according to a plan
Occasionally, emergencies will drop into your lap which will mess up your well-defined plans. When this happens you will need to accept the disruption, work to resolve it, and move on. Try not to get frustrated.
The reality is this may mean you need to pick up some of the slack on your own time. Remember that this is a transitional period. If you are managing your workload well and scaling your team, this will not be forever.
Everyone’s workload, stakeholder expectations and working hours can differ so experiment with techniques and schedules to see what works for you.
Be available to your team but set limits. You’re looking after a team now, and they will have emotional as well as technical needs. If you ignore them, they will:
- Spend hours solving the wrong problems which your direction would have helped them fix in minutes
- Not create things up to your standard, but not understand why and what that standard is
- Feel uncared for.
Don’t do that. Instead, speak openly with them, explain that you are going to be very busy but that they are important to you and essential to the projects they work on.
Don’t say: “Can’t you see I’m too busy? Don’t bother me with that now”
Do say: “I’m tied up at the moment, but I have some ideas on this issue. Can we review this together at 13:30?”
Some days all management is is trying to get people to see a problem clearly so they can solve it
— Camille Fournier (@skamille) June 18, 2019
Ensure your team members have a well-planned work pipeline so they can jump onto a different issue if they’re blocked while they’re waiting for your feedback. This will help keep them engaged and stop you from worrying you have team members twiddling their thumbs while you plough through project work.
Manage your email, do not be a slave to it. Ping. Ping. Pingpingpingping. You’ll suddenly be acutely aware of the vast, seemingly compounding stream of email you now receive. But always remember you’re the leader now, not the notifications bar. If you’re compressing your email handling down into a smaller timebox, you’re going to need to use that time wisely.
- ALWAYS reply, even if it’s just to say “Thanks for the enquiry, I’ve scheduled this in at 14:30 tomorrow to take a look. I’ll have more news then!”. Nothing will build up stakeholder appetite for calls and meetings like a lack of regular communication.
- Actually schedule a time to reply. A real, immovable event in your calendar. Then do it. “Mark as unread” is not a reliable scheduling tool.
- Don’t put off difficult replies or they’ll sit in your inbox forever, and someone is going to be mad. Bite the bullet, and give a tactful but honest answer as soon as you can. Be open to scheduling-in a call to discuss. Then move on with your day.
I’ve found a strategy similar to Inbox Zero helpful on this, but your mileage may vary. Try different techniques, but the important thing is to keep communication controlled while being regular, open and honest.
Keep a timesheet. Evaluate yourself. This takes some getting used to. If you don’t record what you’re doing, and when you’re doing it, you’ll have no meter to evaluate yourself against, just a vague feeling of “I’m doing well” or, possibly, “I’m not doing as well as I thought I would”.
I’ve found it helpful to track as little as this in a personal Google Sheet on a month-by-month basis:
- Start time: Enter the current time using a keyboard shortcut or a macro
- Stop time: As with start time
- Duration: Auto-calculated
- Project name: Particular client and project work or Management tasks
This means at the end of the week you can review your progress. Ask yourself tough questions:
- Was I as disciplined as I thought when it came to scheduling and project management work, or do I need to improve?
- Am I sticking to one task at a time, or context switching throughout the day and getting nothing done?
4. Mentor Your Team
One of the hardest things about delegating to your team is feeling “they won’t do it right” or “it’ll be quicker if I just do it myself”.
The antidote to this feeling is strong, well-thought-out mentorship.
Schedule mentorship. You put meeting invitations in your calendar. Why not the time for mentorship too? This could be a bi-weekly show-and-tell with your team, taking a few minutes to talk individually with your team members, or reviewing and discussing an interesting training video from one of your vendors together.
Review their work and provide constructive feedback. It’s essential to provide as much incremental feedback as you can. If you wait until they’ve finished an entire project, look at it, complain “well it’s not how I’d do it” or “it’s not up to my standard, but we don’t have any time left, so you’ll have to launch it”, this is probably due to failing to break reviews into small enough chunks.
If your team codes, implement code review. Ensure you personally review every PR. Timebox this in the same way you do with email and other management-related tasks.
If your team designs, review the header, footer, every chunk of the concept you can break it down into.
Be kind, but honest. Use this as an opportunity to share your greater experience with your team and fast-track them to becoming quality craftsmen too.
As for thinking “it’ll be quicker if I do it myself”, yes, in all likelihood you are correct. You’re probably more experienced than most of your team and you’re also fully familiar with your company’s tools and history. But this mentality turns you into a roadblock to growth. You have to break this mindset. Remind yourself that:
- They will get quicker if you trust them and let them have the experience, even if this means sometimes making mistakes.
- Just because you’ve always done something a certain way doesn’t mean it’s the best: be open to their ideas and variations.
- You will use tools like mentorship to improve their techniques, quality and understanding over time.
Transitioning your role from day-to-day project work into leading a team is a challenging, but extremely rewarding task. If you set clear boundaries, manage your time well, and focus on mentorship, you can manage the transition successfully and hopefully keep as much of your remaining hair as is possible.