作是一种新技术:你需要时间来学习。“不要希望你一开始就能学会,”他补充说。
如果领导者是一名技术专家型官员,而不是一位沟通者,那么团队和组织都得挣扎着求生存。虽然一些人发现很难学会开放和民主化,但人事管理技巧可以通过正规培训来传授(MYOB使用Software Education提供的一个课程)。要成为一名高效的团队领袖,你需要喜欢和人打交道,并通过与他们沟通来传达自己的观点。转贴于:中国项目管理资源网
两种角色在意识上的差异
你不再是一名程序员,Smith指出,因此你不能把全部精力花在编程或设计上。因为你乐于编程,这可能诱使你逃避新的人员管理工作,因而造成风险。
“成功的人[团队领导]了解人们的动机,”Blythe说。但Katsos指出,保持团队的快乐情绪会大大提高他们按时交付一款优良产品的机会。
除了指导和管理你的团队,重要的是,你还需要与内部顾客(例如营销、QA或设计部门的关键人物)建立关系,帮助自己养成一种大局观。关注组织的政治策略也会提醒你公司即将发生的重大转变。
Katsos对这个观点有更深入的理解,他认为你需要了解整个项目生命周期。除了编程以外,你还要承担QA、文件资料和其它方面的一些责任,即使你的团队并不负责这些任务。
“不要指望减少工作时间,这是肯定的,”Danckert警告说:“甚至你在度假的时候也必须做出决策,最好是参与进来,而不是接受你不希望的决定。”
时间管理
对任何拥有一定自主权的人来说,时间管理都十分重要,因为他们需要了解如何组织他们的工作时间,但一个团队领袖必须努力平衡这个角色的管理和实践时间。
专家小组一致认为你需要分配时间进行管理工作;但在如何分配时间方面,他们并没有达成统一意见。一些人支持首先开始做管理工作,其他人则更倾向于将整天的时间分成小的时间块。
“我给自己不属于关键路径上的[技术]任务,”因为一名团队领袖需要能够在必要时完成管理任务,Katsos表示。
重要的是,必须保证没有人会陷入困境,Blythe说——如果任何任务用了两天以上的时间,你应该坐下来与相关人员进行讨论,找出出现的问题。转贴于:中国项目管理资源网
Katsos喜欢把大型项目分成小块:如果某件工作预计要一年时间完成,他可能会将它按月进行划分,并让开发人员估计他们完成最开始一部分需要的时间,然后开始执行项目,并将进度与估计进行跟踪比较。只是“不要太过于依赖估计”——如果有任何工作偏离正轨,你应该尽可能早地处理它,Katsos建议。
同时管理自己和其他人的代码
虽然Smith提到制定标准(编码标准、单元测试、清单等)和检查工作以符合法规监管的重要性,但他承认:“我从来没有发现这个[任务]有任何真正令人满意的地方。”Davis特别指出,代码文件资料必须达到标准,否则将来维护的时候会花费不必要的时间。
尽管同辈审查有助于维护标准,但Smith表示,你必须让团队成员报告他们正在进行的工作(记得给它确定时间块),并由你来指出任何缺陷。Scott Meyer的《Effective C++》之类的书籍可能有助于这种讨论,Smith建议。
Smith也建议在一些事情上取得共识。例如,进行代码团体审查(匿名进行,除非参与的程序员充分公开接受批评)可能会在优秀和糟糕代码方面达成一致,为我们提供可接受的范例,如变量命名,或使用矢量而非数组。转贴于:中国项目管理资源网
Davis指出,即使两个人的贡献并没有直接相关的地方,也要保证各