Not Much To Look At, But Much To Touch

Job Roles in Software Development

This is my notes from a discussion I lead at DePaul about the types of jobs in Software Development. It was based on the Microsoft Solutions Framework (MSF) job roles used on my development team.

Middle-Management Leadership:
Manage people, resources, budgets. Oversee and provide vision for several major projects simultaneously. Review employees in all other positions. Work with other MM leaders for interaction between projects.

Team Leadership:
Manage people, resources, and timelines for one major project or several minor projects. Act as the central point of contact on those projects. Involvement or awareness of virtually every issue or decision in project. Responsible for all aspects of the project. Work with all other positions.

Product Management:
Work with clients to define requirements and resolve issues. Design and maintain functional specifications and other documentation. Often provide prototypes for user interfaces or design interface of services. Work with Team Leadership and Software Development.

Logistics:
Manage hardware/software requirements for development, testing, validation, and production environments. Perform or oversee installations. Own the installation process and any installation utilities. Work with resource teams to obtain servers/software and address issues within the environments. Work with Team Leader.

Software Development (Programming):
Design and code software to match the specifications, prototypes, and other documentation. Define timelines. Work with Product Management to refine expectations and clarify requirements. Often interacting with Team Leadership, Testing, User Documentation, and User Education.

Software Testing:
Define testing procedures and certification process. Define timelines. Create and execute tests on software. Manage a bug-tracking procedure. Work with Team Leadership. Collaborate with Product Management to define areas and specifics of testing. Often interact with Software Development. Work with Team Leader.

User Documentation:
Create and maintain user-centric documentation. Work with Product Management and Software Development to define and document functionality. Often provide training materials for User Education. Work with Team Leader.

User Education:
Create training procedures and policies. Design training materials. Execute training sessions. Work with Product Management and User Documentation. Work with Team Leader.

Software Support:
Define support procedures. Handle user issues. Provide resolutions or formulate work-arounds for software issues. Forward hardware/infrastructure issues to Logistics. Notify Software Testing and Development of software bugs. Work with Team Leader.

Note: An individual may fulfill more than one role. For example, all members of my team are responsible for software support on a revolving schedule. As another example, one or more people may provide Product Management, User Documentation, and User Education simultaneously.

Web Master: Honey D. Macker Contact Nick Meshes at NickISPro@hotmail.com
© 2004 Nick Meshes and Meshes.com All Rights Reserved No personally identifying information is collected by Meshes.com.

Not Much To Look At, But Much To Touch