Tips From a Developer on Managing a Small Development Team

John Reeve | July 29th, 2008 | , , ,

Last week our project manager took off to OSCON in Portland, leaving me, the lead developer, in charge of managing our small development team. Facing a gauntlet of client requests, developer questions, and miscellaneous tasks that fall somewhere in between, I had to adapt quickly and learn how to manage a development team if I was going to stay afloat and oversee our team’s (including my own) day-to-day workflow. Here are a few things I learned about managing a development team when the project manager is away.

Prioritize Client Demands

Clients are not equal. Some are a higher priority than others. Knowing which clients need immediate attention is difficult enough. Saying ‘no’ to low priority clients is more difficult. To prioritize the workload for the week I had to consider factors like who pays on time, the difficulty of the task, when they need it done, and overall client relationship. Whatever method you use to prioritize client requests, be honest with them and yourself that you can’t get it all done at once.

Delegate Tasks

A developer’s natural response is to try and get it all done himself. There is something about the code we write, we have a hard time trusting it to anyone else. As a project manager you have to delegate to the team, balancing out the workload evenly so that no developer is overwhelmed. My approach was to use our web-based task management application, Intervals, to estimate time and assign tasks to our team. Then I would check in daily with the team for an update on what they’d accomplished, and assign more tasks accordingly.

Cross Train

A development team will draw its strength from having diverse specialties. On our development team we have a javascript guru, a database wiz, and an expert on a rare type of voodoo known commonly as regular expressions. When one of us is out it takes the others a little time to dive in and interpret our code. It is important for developers to regularly discuss and share code. We hold weekly meetings to discuss new code development, and often times do pair programming to keep our team in good alignment.

Life and work will throw more at you than is humanly possible to accomplish in the 24 hours we are given each day. You will have to prioritize, delegate, and cross train to deliver web sites efficiently. Otherwise, you’ll just spin your wheels wondering why you aren’t gaining any traction on your work week.

Leave a Reply

Intervals Blog

A collection of useful tips, tales and opinions based on decades of collective experience designing and developing web sites and web-based applications.

What is Intervals?

Intervals is online time, task and project management software built by and for web designers, developers and creatives.
Learn more…

John Reeve
Author Profile
John Reeve

John is a co-founder, web designer and developer at Pelago. His blog posts are inspired by everyday encounters with designers, developers, creatives and small businesses in general. John is an avid reader and road cyclist.
» More about John
» Read posts by John

Jennifer Payne
Author Profile
Jennifer Payne

Jennifer is the Director of Quality and Efficiency at Pelago. Her blog posts are based largely on her experience working with teams to improve harmony and productivity. Jennifer is a cat person.
» More about Jennifer
» Read posts by Jennifer

Michael Payne
Author Profile
Michael Payne

Michael is a co-founder and product architect at Pelago. His contributions stem from experiences managing the development process behind web sites and web-based applications such as Intervals. Michael drives a 1990 Volkswagen Carat with a rebuilt 2.4 liter engine from GoWesty.
» More about Michael
» Read posts by Michael
Videos, tips & tricks