I like cycling, I'm not fast and I'm certainly not fit, in fact I'd go as far as to say I'm not an incredibly good cyclist at all but I do get enjoyment from riding the roads of Sydney with friends and enjoying the outdoor life coffee. Cycling gives you me an opportunity to relax mentally and to allow those thoughts that have been percolating in your mind a chance to form into ideas, plans, and actions.
One of the ideas that I found myself mulling over last week was how much the common practices used in bunch cycling align with those used by successful team leads. I wanted to explore that a little more to see how this relationship works. I don't think that there's anything new or groundbreaking in this post, it's all common sense stuff but I wanted to get it down in a post anyway.
It's not about you
When you're cycling in a group the whole way in which you approach riding is changed. It's no longer a solo effort, it becomes more than just about you, and it effects everything you do on the bike. Sometimes those changes are small, almost unperceivable, but riding solo and riding in a group are two very different things.
As an example let's consider traffic lights. If I'm riding on my own and I'm pulling up to a set of lights which are amber, more often than not I'm going to sprint for the line before they go red, if they do turn red before I get to them then I'm going to pull hard on my brakes and try and stop before I hit the oncoming traffic; this often involves swearing and my back wheel hanging in the air, it's fun.
In contrast, if I'm pulling up to a set of lights at the head of a group ride and they're amber the first thing I need to consider is the size of the group, is it four or fourteen? If its four then we can probably roll through, if it's fourteen then there's a very good chance that the last six riders are going to be jumping the lights. I'll also want to think about the speed we're travelling, if we're rolling up to the lights at 20kph then it's a pretty simple job to slow the group to a stop safely. If we're bearing down at 50kph then the result of applying any significant amount of braking is likely to result in serious injury as the group concertinas into itself.
You can apply similar thinking to work. When you're working solo on a project you have a lot more freedom to do what you want speed up, slow down, change language go crazy. But. when you find yourself working with or leading a team of people, then the impact of your actions can have wide ranging implications, as developers and especially as leads we need to be conscious of our actions and consider the impact to the wider team when making decisions.
Define the direction
Cyclists are creatures of habit when it comes to rides. In Sydney if you're in the inner west then it'll probably break down something like this: Tuesdays is a flat ride out to La Perouse, Thursdays take you into the eastern suburbs a hills ride. Saturdays are going to take you into the northern beaches or out to the royal national park. The point is when you start a ride you're always clear on the general direction you're taking and you're clear on the end destination which is the cafe du jour. What isn't always clear is the exact route that you'll take. There are always small changes, deviations and extensions that can be built into the ride depending on weather, group fitness, unforeseen accidents or mechanicals. The acutal route to the final destination is always changing and It's important that everyone is clear on the current direction of the group because, if they're not, then it can cause confusion and confusion can cause accidents or at the very least for the group to get disgruntled.
At work we're generally speaking we good at knowing our general direction, we have projects, we know what they are and we know they need to be delivered. But it's important that we're clear on the constantly changing topography of the project. It helps alleviate confusion - which can cause delays - and builds trust and a sense of stability which is great for team bonding and moral. It also reduces the chance that you end up duplicating effort or implementing something that didn't need to be implemented.
Make it easy
If you're at the head of a group of cyclists, one of the things that you'll be acutely aware of is how much extra effort you're exerting than the people behind you. Essentially you're taking the brunt of all the air hitting the group, this isn't great for you but it's fantastic for the riders behind you because they're using up to 40% less energy to keep up. In a group ride this means that you can share/distribute the load which over the course of a 3-4 hour ride means that you can go significantly further and faster than you would do if cycling alone.
In a professional race such as the Tour de France the dynamic is slightly different, in this model certain riders will take the responsibility of protecting the lead rider from exerting any effort until it is absolutely necessary, essentially what they're trying to do is get their lead rider into the best possible place for them to attack and win a given race.
In our teams as leads we can have a similar effect. Ensuring that tasks that our team needs to perform are well defined, that there are no problems preventing us from continuing with our work and that each team member has the best possible opportunity to focus - and remain focused - on a given task until it is completed are all things that we can do to reduce the amount of effort required by our team to deliver a project. This stretches into ensuring that everyone in the team takes the time to do those tasks that reduce friction for everyone else - Pull requests, build maintenance and, bugfixing would all be examples of these tasks. By sharing the load, over the course of a project we can ensure that we can go further and faster than we would have done alone.
The big disadvantage of being in - rather than at the front of - a group of cyclists is reduced road visibility. There can be as little as 15cm of tarmac between your front wheel and the rear wheel of the rider in front, and that isn't much when you need to react to potholes and roadkill which can bring your ride to a sudden and painful close. It's no surprise then that communication in a group is critical. Depending on the situation this is a achieved in a number of ways. Generally hand gestures are passed down the line to highlight obstacles in the road, although the odd shout of "hole left" is not uncommon. Hand gestures don't work as well when passing information back up the line from the rear of the group and in this instance a shout is usually the best bet.
Being part of a team also involves a reliance on good communication, and the mode of communication is equally important. Usually something like HipChat is fine, it's unobtrusive and allows the team to remain focused on their work. In some situations a well timed face to face chat can help where HipChat isn't quite going to cut it. When communicating outside the team HipChat isn't really the best thing and that's where something like a blog post or page can really be useful.
Set the tempo
Everyone in a group ride is different. They have different levels of fitness and different strengths and weaknesses. If you're riding in a group, especially if you are sitting on the front it's important to be aware of this and to ensure that you set the tempo such that everyone in the group has an enjoyable ride. What you don't want is for the group to be split or strung out, because that isn't much of a group ride. You also need to make sure that the effort made by the group is appropriately distributed, knowing when to attack and when to hold back. This is more obviously seen in races where the peloton invariably chases down the breakaway in the closing kilometers of a stage.
For the team lead keeping the right tempo for the team is equally important. Understanding the team's velocity and planning appropriately is an invaluable way of ensuring that each sprint is appropriately stacked with issues. Knowing when to push with the team to reach a particular goal rather than missing or changing it is also an important thing for us to do.