28 November, 2012 § 1 Comment
Trying to get the most out of yourself and your coworkers can be a challenge when working on a large project. Through my time I’ve learned several habits that I feel help to get the most out of myself and the people around me.
1. Prioritize reviewing other people’s code over writing your own code
When other people have requested feedback or review of their work, getting a quick response to them can keep them moving at a fast pace. Whenever I’ve had my own review requests linger, I’ve picked up other work to do in the meantime. These context switches are very expensive, and it can make coming back to the original work harder. The quicker the turn-around-time, the better.
2. Prefer asynchronous communication channels over synchronous ones
While working I stay logged in to our IRC chat room. The chat room keeps me connected to the other people within the project and allows me to ask quick questions of others. In my experience I often get pretty quick responses when asking questions in the chat room, but each question there means that someone else may have to stop what they’re doing to try to get a response.
If at all possible it is better to do a little more research (which will pay off more in the long run) or send an email to the person. Emails are perfect because of their asynchronous nature. The email response can wait until the receiver has set aside time to respond to emails and finished most of their daily routine.
3. Let people who have specialties use their specialties
If I come across a bug and already know who would most likely be the one to fix it, I’ll try to let them know about it. Chances are that they can fix the bug faster than anyone else on the team. This practice can help the team move faster, but it is also important to make sure that this person doesn’t become the only person with knowledge in this area. Code reviews and blog posts can really help to spread the knowledge and reduce the negatives of information silos.
4. Leave email reading until the end of the day, but don’t let email responses linger
One of the best tips that I have learned from others is to set aside email reading during the day. Responding to emails as they arrive turns email from an asynchronous channel to a synchronous one, and the amount of incoming mail in a day can be overwhelming. I particularly like to leave email reading until the end of the day, as the amount of context switches for each email can be mentally tiring and make it hard to continue working afterwards.
Update: 5. Help mentor others
I’m not sure how I forgot this in my first draft, but mentoring others is probably the best way to help increase the output of yourself and the ones around you. Mentoring provides an opportunity to refine your skills and learn details that might be overlooked if not seen from a different perspective. While mentoring, the mentee gains valuable knowledge and is set on a path towards self-sustained contributions. This person can then in turn help mentor others, spreading the knowledge to even more people.
I find that these practices help me and the people around me work faster. Do you know of any good tips that I may not know about?