Managing a Software Development Team is different from Leading a Software Development Team. Here is how I differentiate Managing a Team with Leading a Team -
Leading a Development Team is a full time technical role to provide the team the right direction, best solution and appropriate guidance. This role requires a person with highly knowledgeable and skilled in technologies relevant to the job, and who can lead through example. Also can rolls up his/her sleeves to get to the solution when the team needs it.
Managing a Development Team is a blend of Management and Technical knowledge that provides a person to lead the team technically and orchestrate the team's development activity to achieve efficiency with the means of development process, tools, techniques and best practices. I'll explain the process, tools and techniques with example in the subsequent sections.
Here are the processes, tools and techniques:
1. Review the Requirement Specifications with the Full Team
Process: Team Review -> Feedback
Tools: Meeting; Review Feedback Document
2. Create the Draft Development Detail Plan and publish to the team. Review with the team members to firm up the work effort and Update the Development plan and publish the finalized plan
Process: Individual discussion to vet the work effort
Tools: Development Project Plan
3. Unit Testing
Process: create unit test scenario including regression test cases
Tools: Unit Test Cases documents
4. Peer Review: should review code, any technical specifications, unit test cases and test the functionality. The review should start with a one to one session between the coder and reviewer
Process: One-on-One review session
Tools: Peer Review Feedback Document
5. Sanity checking of deployed code - Have a sanity check list of all the high level functionalities and features that needs to checked before releasing to Testing Team
Process: Test in Development environment and Deployed environment
Tools: Sanity check result
6. Lesson Learned at the end of each Release (Retrospective meeting style discussion in Agile terminology)
Leading a Development Team is a full time technical role to provide the team the right direction, best solution and appropriate guidance. This role requires a person with highly knowledgeable and skilled in technologies relevant to the job, and who can lead through example. Also can rolls up his/her sleeves to get to the solution when the team needs it.
Managing a Development Team is a blend of Management and Technical knowledge that provides a person to lead the team technically and orchestrate the team's development activity to achieve efficiency with the means of development process, tools, techniques and best practices. I'll explain the process, tools and techniques with example in the subsequent sections.
Here are the processes, tools and techniques:
1. Review the Requirement Specifications with the Full Team
Process: Team Review -> Feedback
Tools: Meeting; Review Feedback Document
2. Create the Draft Development Detail Plan and publish to the team. Review with the team members to firm up the work effort and Update the Development plan and publish the finalized plan
Process: Individual discussion to vet the work effort
Tools: Development Project Plan
3. Unit Testing
Process: create unit test scenario including regression test cases
Tools: Unit Test Cases documents
4. Peer Review: should review code, any technical specifications, unit test cases and test the functionality. The review should start with a one to one session between the coder and reviewer
Process: One-on-One review session
Tools: Peer Review Feedback Document
5. Sanity checking of deployed code - Have a sanity check list of all the high level functionalities and features that needs to checked before releasing to Testing Team
Process: Test in Development environment and Deployed environment
Tools: Sanity check result
6. Lesson Learned at the end of each Release (Retrospective meeting style discussion in Agile terminology)
No comments:
Post a Comment