Sunday, October 09, 2005

Talking about software company structures – Part 4

Ok - today’s topic - the last role for a small scaled company (may be I’ll add another optional role later) - Project Manager Role.

A Project Manager should plan, manage and allocate resources, shape priorities, coordinate interactions with customers and users, and keep the project team focused. The Project Manager should also establish a set of practices that ensure the integrity and quality of project artifacts. Basically if the Project Manager is incompetent, no matter how competent the technical team is, there’s a greater chance of the project failing.

A Project Manager should apply project management knowledge, skills, tools and techniques to a broad range of activities in order to meet requirements and to deliver an end result for a particular project.

A Project Manger should posses following Skills:

  • Experience in the software development lifecycle, the domain of the application and platform
  • Good estimation, planning, time management, scheduling, project costing, and budget management skills
  • Competency in resource planning, resource management, and procurement
  • Ability to analyze risks, dependencies, and make tough decisions
  • Presentation, communication, and negotiation skills
  • Experience in Project Management (In smaller projects a member who’s interested in becoming a Project Manager could play the role of Project Manager)
  • Leadership and team building capabilities
  • Conflict resolution, problem solving skills, and the ability to make sound decisions under stress (A Project Manager shouldn’t be some one who lays all the pressure on the shoulders of the technical team. He should shoulder at least 50% while the Architects and Leads should account for another 40%)
  • Deliverables based management, a focus on the delivery of customer value, in the form of executing software that meets (or exceeds) the customer's needs.

As with all other designations, this could be stretched to three designations. More experienced project Managers could handle tough customers and extreme pressure with around 30 team members while new ones could handle lesser hostile ones.