从程序员到项目经理:每个人都是管理者
从程序员转为项目经理,这是一个巨大的跨越。一个新任的项目经理,对项目管理找不到感觉,一般也被认为是一件正常的事情。这是否意味着,一定要等到当上了项目经理才能学习项目管理吗?一定要做砸一个项目才能成长为合格的项目经理吗?其实未必,项目管理所需要素质和技能并不是什么独门秘籍,而是在生活中时时用到、处处可以锻炼的。只要有心,程序员一样可以学习和实践项目管理知识。从某种程度来说,我们每个人都是管理者。
1.管理是职能而不是职位
管理学之父彼德.德鲁克曾说:“任何一位做决策的人,其工作性质和董事长,和行政领导相同。即使他的管辖范围有限,甚至于他的职能或他的大名,不见于组织系统里,办公室连专线电话也没有,但他确实也是一位管理者。”
可见管理并不是经理、老总的专权,管理不是个职位,而是个职能。无论你在什么岗位,也不论你有没有下属,只要你需要做出决策,需要对结果负责,那你就是个管理者。从这个角度来说,我们每个人都是管理者,因为每个人都需要对自己的生活的工作负责,对碰到问题进行权衡决策,只不过决策的内容不一样而已。
程序员显然也需要对工作进行决策。当接受任务时,程序员需要对工作量、工作难度、时间限制进行评估,以确定能否实现项目经理的目标;开发一个功能点时,我们需要思考哪些实现方式,哪种方式开发速度、运行效率、对资源的占用几个方面综合最优;最进度滞后时,是要加班赶回来,还是要调整工作方法,提高开发效率……这些不都是决策的过程吗?在每一个决策点,程序员完全可以像一个真正的项目经理一样,发挥其主观能动性,主动进行管理,保证任务又快又好的完成。我们的管理才能,就在这一次一次的决策过程中,逐步积累、逐渐提高。
管理只是一项职能,人人都可以随时随地履行这项职能。可惜的是,很多人没有意识到这一点,不自觉的放弃了这项可以做而且应该做的工作,这不能说不是一种“失职”啊。
2.自我管理是一切管理的基础
管理有一个流行的定义,叫做“管人理事”,既然是管人,那必须得有人可管。有人说,我没有一个下属,只是一个“光杆司令”,要说我是管理者,那我都管了谁呢?
其实只要在社会中,没有谁是真的光杆司令,你管理的不一定是下属,每一个你需要打交道的人,包括你的领导,都是你的管理对象。退一步讲,即使你不需要跟任何人打交道,你也可以、而且必须管好一个人——那就是你自己。
彼德.德鲁克说过,“有伟大成就的人,向来善于自我管理。然而,这些人毕竟是凤毛麟角。但在今天,即使是资质平庸的人,也必须学习自我管理。”试想一个连自己都管不好的人,怎么能管得好别人呢?更别说管好一个大的团队了。
那自我管理该管些什么呢?李嘉诚先生曾说:“自我管理是一种静态管理,是培养理性力量的基本功,是人把知识和经验转化为能力的催化剂。”如果更加直白的说,自我管理实际是一个修身的过程,是一个自我约束、自我磨炼、自我精进的过程。作为一个普通人,哪些方面需要磨炼和精进呢?我想无非是一个人的身心和素质技能两个方面,相应的,自我管理的内容也应该是包括身心管理和个人素质技能管理两个方面。
(1) 身心管理:包括身体、心态、情绪、世界观、人生观、价值观、人生目标、职业目标等不同层次;
(2) 素质技能管理:包括学习管理、时间管理等。其中时间管理时自我管理中非常重要的一环,因为它与项目管理、企业管理等内容直接交织在一起。要成为一个卓有成效的管理者,首先就是要能管好你的时间。
图 自我管理是其它管理的基础
既然自我管理是一种修身,那也就可以说,自我管理是其它一切管理的基础,因为不论是什么管理,都离不开管理者自身的身心和技能。一个企业中的所有管理工作,从管理的对象来说,可以分为管理者自己、企业中的人和事、企业组织本身以及企业战略方向几个层次,其中管好自己属于最为基础的层次。一个能管好自己的人,才有能力、有精力管好别人,处理好复杂的事务,才能够通透人性,把握组织和市场的规律,成为一个真正卓越有管理者。
3.每个开发任务都是一个微型项目
作为一个程序员,也许你从来没有把自己放在项目经理的角度来考虑过问题,但实际上,你不只是一个程序员,同样是一个项目经理,因为每次接受了一项开发任务,实际上就是接受了一个小项目。
一项开发任务,同样具备项目的典型特征:临时性、独特性和渐进明细。临时性是显然的,因为每一项开发任务都有开发时限,而不是重复无休止的工作,当目标达到,任也就结束了。同时每一项开发任务又是独特的,时间、地点、完成人、成果、项目环境等,总有一样是不同的,就便是其独特性。越往后开发,对细节的把握越具体,这渐进明细。
由此可见,一项开发任务就是真真实实的一个微型项目。只不过这个项目,只是由你一个人来完成而已。在完成任务的过程中,同样需要像管理项目那样,进行计划、时间安排、偏差控制和领导(自我领导)。
把自己当项目经理的程序员,才能成为真正优秀的程序员。优秀的程序员,也更容易成长为优秀的项目经理,因为在被正式任命为项目经理之前,他已经负责开发过了无数个微型项目。
from http://developer.51cto.com/art/201211/364725.htm
相关推荐
并不是每个人都适合或者需要成为项目经理。选择这条路径应该基于个人兴趣、能力和职业规划的综合考量。 - **意愿性**:成为项目经理需要强烈的个人意愿,因为这是一个充满挑战的角色,涉及到管理、沟通等多个方面...
《程序员第二步:从程序员到项目经理》这本书,主要探讨的是程序员如何在职业生涯中实现角色转变,从编写代码的技术人员晋升为管理项目的领导者。书中可能涵盖了以下几个关键知识点: 1. **项目管理基础**:讲解...
【程序员到项目经理】的主题探讨的是IT从业者如何从技术岗位转型到管理岗位,即成为项目经理的过程。这个转变不仅仅涉及技能的升级,更是一个从内在态度到外在能力全面转变的过程。 1. **为什么要当项目经理** - ...
10. **责任心与职业道德**:程序员的每一个代码决策都可能影响到整个项目,因此,责任心强,遵守职业道德,对代码负责,对用户负责,对企业负责,是每个程序员应具备的品质。 总的来说,企业需要的不仅仅是编程机器...
管理并非单纯的控制,而是要激发团队潜力,共同达成目标,让每个成员都能在工作中找到成就感和乐趣。优秀的领导者能让团队在不知不觉中受到指引。 项目经理并不是简单地分配任务和监督进度,而是作为责任的主要承担...
产品研发部采用业务系统为导向的组织结构,每个系统由一位研发经理和产品经理共同负责,他们会在产品升级或新项目启动时组成虚拟项目组,由研发经理担任项目经理,确保项目的顺利进行。 从程序员到项目经理的思维...
文章不仅对程序员的各种层次进行了细致入化的划分,还鼓励每个从业者明确自己的目标与定位,追求属于自己的那份价值。 #### 八重境界详解 ##### 第一重:Bad Programmer - 糟糕透顶 **定义:**这一层指那些完全...
管理在这一过程中扮演着至关重要的角色,但其本质并非控制,而是促进团队协作,使每个人都能够在工作中找到成就感和乐趣。优秀的管理者应该低调而高效,他们的存在是为了推动团队向前,而不是为了彰显自己的权威。...
此书对现代软件工程产生了深远的影响,是每个程序员和项目经理都应该阅读的经典。 在书中,布鲁克斯提出了几个关键的知识点: 1. **布鲁克斯定律**:增加人员到一个已经落后的项目只会使项目更加落后。这是因为新...
这篇文档从入门新手到顶尖专家,详细描绘了程序员在技术成长过程中的十个不同阶段,每个阶段都有其特定的技术要求、思维模式以及挑战。下面,我们将逐一解析这十个层次,并探讨每个层次的核心要点。 第一层:初学者...
3. **管理成本高**:过多的管理者参与和复杂的流程使得管理成本显著上升。 4. **缺乏激励机制**:未能有效激发员工的积极性和创造力。 #### 三、新旧绩效考核制度对比 通过对旧绩效考核制度的反思与改进,新制度...
有些人可能会转向管理岗位,成为项目经理或产品经理;而另一些人则可能继续深耕技术领域,成为一名技术专家。“快速成长,让自己变得非常重要。”这句话反映了这部分程序员在职业生涯中的转变过程——从专注于技术...
#### 二、管理路线:转型为项目管理者 另一条常见的发展路径是从技术岗转向管理岗位。这条路线适合那些对团队管理和项目管理感兴趣的人。在积累了足够的工作经验后,程序员可以考虑担任项目经理或者技术团队的负责...
此外,项目经理还需要具备人员管理技能,理解团队成员的个性差异,尊重每个人并激发他们的潜力。 了解和运用心理学,如迈尔斯-布里格斯人格类型分析,可以帮助项目经理更好地理解团队成员的行为模式,从而提高团队...
项目管理路线:从程序员到项目总监 - **程序员**:初期积累技术经验和项目经验。 - **项目组长**:负责小型项目的日常管理,如任务分配、进度跟踪等。 - **项目经理**:全面负责项目的执行,包括需求分析、资源...
对于那些具备一定技术基础同时又善于沟通协调的程序员而言,转型成为项目经理或产品经理也是一个不错的选择。这一路线不仅要求具备扎实的技术背景,还需要良好的团队管理和项目执行能力。项目经理需要确保项目按时按...
Phil Chu 提出的高效程序员的七个习惯是每位IT从业者应当关注和实践的。以下是对这些习惯的详细解析: 1. **理解你的需求**:正确理解和把握项目需求是避免浪费时间和资源的关键。快速建模和创建原型有助于快速验证...
这条路径通常需要从初级程序员做起,逐步成长为项目经理、开发经理,最终晋升为技术总监甚至更高职位。技术总监不仅需要对新技术保持敏感度,还要具备出色的管理能力。这条路径虽然诱人,但也伴随着巨大的压力和挑战...