coaching and training, recruting strategies

related to .net projects. posts on coaching, training and recruting for teams. generally, program management related tasks.

Tuesday, February 21, 2006

Credentials Posted by Picasa

Thursday, February 09, 2006

Managing and preparing a team for organization:

This post is a brief discussion of some of issues we face in small to medium size organizations. while the capacity of the resources is great, inadequate technical management can lead to conclusions that there's a need for more resources, or getting more qualified resources, which in either case, is a slow down for most projects.

1. First, get the team progressively aware of deadlines.
Often the boss comes and tells the technical manager I will make a presentation the next day at 4PM, do you think you will be ready. A natural response is, yes, we’ll try, don’t worry. Right after that, the manager would go and ask the developer to please speed up; as popular as this reaction is, it really compromises the deadline, as it is not based on any timeline, or precise info or document.
On the greatest ways is to get the developer into the timeline of the project, from before and after he started working for the company, so he becomes aware of the progress. In fact, this will let the developer make better decisions based on his schedule, and also based on his life outside the company.
An example, the developer was planning to have a meeting with one of his friends to work on some feature, then he has to change plans for a last minute presentation. It is ok if from the start, the project was well organized, if not, it will always be the last minute.
With the development of technology, web applications are progressively leading the way of communicating data between departments in an organization. In fact, for better time management, it is important to take the time and integrate these tools (e.g. Time Tracker, Issue Tracker, and other tools), this would be a great thing to do on overtime for a technical manager.

2. Second, get the team aware of the importance of documentation to a minimum.
Documenting code is becoming easier and easier with the advancement of .net technology. For instance, a developer wrote a windows form which generates data access code. It would be wise for the technical manager to find the best and easiest way to invite the developer to document his code. For visual, we have the commenting strategy with the three slashes for c#, and three apostrophes for, in order to generate the xml documentation, then the chm file.

Now, after getting through this step, it is important to have the developer learn to approach a module starting with the chm file, instead of always starting with the forms or code. This will help him understand what to put into the documentation, not just comment in any way.

As a matter of fact, content for documentation has to be focused, brief and clear, which requires planning.
Of course, using tools and customizing them, such as adding a word document if necessary or a powerpoint, is always a great plus.

3. Three and final, get the team to know how to work together.
In a team where everyone has his own task, no one is aware of the others’ task, it becomes difficult if one of the developers has some kind of obstacle for actually finishing his work. The time to transfer the work to another developer could be equal to the time left for the deadline of the task. In fact, if developers were well acquainted with each other, they could do the transfer, with only asking the technical manager for permission.
To get the team to this level, it takes a constant effort, such as when the rhythm is not that intense, try and practice interchanging tasks between developers, or having them work together on an extra task. By the time work will pickup, the team will be more than ready to get going on any kind of task, as most of their abilities are somewhat complementary (complementary skills, another issue to think about).
This is just one of the many strategies involved in team management.

Each of these techniques takes time and patience, from 3 to 8 months for each strategy to be well established. These techniques will give the team stability, teamwork ability, and good time management. This way, the goal is to server the client the best way possible.

Recommendation: Microsoft Solution framework has great methods to follow on this.
MSF + Tools = Great management.
More to come soon!