如何从程序员转型为项目经理

简介:   当你预期的那一天,也许是你害怕的那一天,终于来到了:从工程师的队伍里,你被提拔到了软件项目领导或者团队领导即项目经理的位置。  这也许就是你选择的职业道路,或许你不太情愿,将就尝试一下。无论在哪种情况下,你都可能缺少工程学科、人员管理以及领导能力的相关教育。

  当你预期的那一天,也许是你害怕的那一天,终于来到了:从工程师的队伍里,你被提拔到了软件项目领导或者团队领导即项目经理的位置。
  这也许就是你选择的职业道路,或许你不太情愿,将就尝试一下。无论在哪种情况下,你都可能缺少工程学科、人员管理以及领导能力的相关教育。这需要更多的领导能力和管理(它们不是一回事),而不能象Dilbert(译注:著名IT漫画主角)那样简单地和老板对抗了。
  当你考虑新的目标时,请考虑下面的活动计划列表。一次就抓住了每个亮点,这是不可能的。但是这份建议说明可以帮助你将注意力放在可以提高你和你的团队绩效的活动上。
  一、建立优先级
  作为项目经理,首先要做的、最重要的事是你需要有意识地建立优先级。当你仍陷于繁重的软件开发活动中时,你需要一套新的职责。过多的经理新手不能抗拒技术的吸引而陷于此类活动,这将导致项目组的其他人员想要获得经理的帮助时,却得不到帮助。
  有成效的领导知道他们首要的任务是为其他组员提供服务。这些服务包括训练和指导、解决问题和冲突、提供资源、建立项目目标和优先级、提供适当的技术指引。
  要使每个组员都能清楚的知道,你总是可以帮助他们。我发现将自己定位于为被我监督的人工作是非常有意义的,而不是相反的。在你所作的事情中,对于组员要求你帮助他们这件事,应该具有非屏蔽中断的优先级。
  第二重要的,是使你的客户满意。作为一名经理,没有直接的能力使客户满意,因为你已不再是作为个人提供产品和服务完成这点。相反,你必须建立一种环境,准许你的组员最大程度上满足客户的需求。经理提供了强有力的方法,有效地提高客户的满意度。
  第三重要的,是为你的项目工作。因为也许还有其他许多技术上的项目,或者其他经理的请求帮助,诸如为指导委员会工作。当这些和二个高级别的发生冲突时,都要准备推辞掉。很明显,使其他经理满意的事情是你最不重要的事情。
  在一个有秩序的组织里,如果你在三个以上的重大环节上获得了成功,其他的经理都会很激动的。我们并不都能很幸运地工作在一个良好的环境里,但一定要对你任务单上排在最前面的工作任务努力尽到最大的责任。集中精力有效地、快乐地、尽可能地帮助你的组员,不要将精力放在使你上司满意的上面。
  二、分析你的技能差距
  除非你已经为新位置做好了准备,否则相对于你当前的领导能力和管理技能,你会感到一些差距。出色的技术背景或许是你被选为领导角色的一个因素,但是你要想干得出色,你需要更多的技能。针对别人的评论和项目,真实地列出你的长处和短处,然后减少差距。软件人员并不以令人满意的人际关系技能出名。你会希望增强处理人际关系的经验:解决冲突、说服以及灌输想法。你也不得不处理包括招聘、解雇、商谈计划表,以及在你的办公室里评论某人业绩使其伤心落泪等一些事务。
  我发现从一堂倾听技能课开始我的管理职业是非常好的。当作为个体提议人,积极地将我们自己的技术议程提交小组时,我们经常对此感到非常惬意。有效的管理要求更多的合作和善于接受的人际关系方式。要花点时间学习如何(何时)巧妙地引导自己的自然判断。倾听技能课提供了一种交流机制,我已经发现在许多场合下都很有用。
  接着,到讲台的另一侧,提高你的演讲能力。如果你真的不适应公开场合的讲话,学习戴尔.卡内基的课会有帮助的。你会发觉,通过这样的培训获得的经验,以及获得提高的交流能力,都可以帮助你更好地适应将来的工作。
  作为项目领导,为了计划和跟踪项目, 以及当需要项目回退而采取修正措施时,你有责任调整其他人的工作。参加项目管理的培训课,阅读一些有关项目和风险管理的书籍和文章。参加项目管理学会,阅读其月刊--PM Network。SEI的软件能力成熟度模型对于软件项目计划和项目跟踪提供了很多有用的建议。建立优先级的能力、控制有效果的会议、清晰的交流,对于你,作为一名经理的绩效将会有实质上的影响。
......

目录
相关文章
|
机器学习/深度学习 算法 架构师
哪几种程序员更容易走上管理岗位
  也许你早已决定做一名管理者,又或者你刚刚有这个打算,不管哪种情况,你是否已经和你的上级交流过这个问题呢?   在我调研过的几百位新经理中,只有15%左右和上级表达过管理意愿,我自己培养的几十位新经理中,明确表示自己想做管理的,也只有大约20%左右,这个比例很低。所以,如果我猜你没有跟上级表达过你的意愿,大概率能猜对。   你可能会说,如果上级觉得我能干,肯定会给我机会的;如果觉得我不行,表达也没用。而事实上,这个问题往往不会这么绝对。对于明确表达自己意愿的工程师,即便不能立刻满足他们的期待,但在有合适岗位的时候,他们的确会被优先考虑。因为对于做管理来说,个人意愿很重要,没有意愿就没有主
102 0
|
架构师 程序员 测试技术
程序员加入新团队,必须知道的 20 道问题!
不同的软件开发团队做事的风格也完全不同。即使在同一家公司内,许多可变因素也会导致团队之间出现分歧。作为一名软件工程师,每当与新同事合作或开发新软件时,通常都会觉得非常兴奋。但在加入新的开发团队时,我们需要思考一系列的问题。
|
敏捷开发 程序员 API
最怕程序员学会了隐身术!创业者最应该看的软件开发风险管理
  看到这个标题,我想应该不少人都有苦涩的回忆,我这几年的创业经验中,也碰过几次程序员人间蒸发导致技术开发难以接手的案例,也听说过类似的烂摊子也的确不少,我都有遇过,通常创业者本身不懂技术或是对技术一知半解的状况,就更容易被程序员唬得一愣一愣的。别以为这种事只有遇到外包才会发生,我也看过技术合伙人学会隐身术后就人间蒸发的惨痛案例。   因此,经过去年一年在程序员客栈工作,我都建议每个非技术背景的朋友,可以至少知道一些基础,这样当程序员发生问题的时候,就不致于发生不知道代码、资料库不知在何处的窘境。为了把风险降到最低,以下来谈谈创业者在与程序员合作时需要注意的几个重点。
756 0
|
Android开发 开发者 UED
创业开发团队的9个误区
如今的创业公司面临的最大问题就是服务交付的速度,创业公司的开发者也与创业团队的其他成员一样,整天忙于救火,因此往往搞错重点和优先级,并最终为公司带来大麻烦。
234 0
创业开发团队的9个误区
|
敏捷开发
技术管理
最近一直在思考技术转管理过程中需要注意到的一些事情,现在就总结下分享给大家看看 在转变过程中,需要注意到一下三个方面 业务管理 团队管理 技术管理 业务管理 业务管理,主要就是管理我们需要处理的业务需求。
1222 0

相关实验场景

更多