zoukankan      html  css  js  c++  java
  • 从程序员到项目经理:每个人都是管理者

    从程序员转为项目经理,这是一个巨大的跨越。一个新任的项目经理,对项目管理找不到感觉,一般也被认为是一件正常的事情。这是否意味着,一定要等到当上了项目经理才能学习项目管理吗?一定要做砸一个项目才能成长为合格的项目经理吗?其实未必,项目管理所需要素质和技能并不是什么独门秘籍,而是在生活中时时用到、处处可以锻炼的。只要有心,程序员一样可以学习和实践项目管理知识。从某种程度来说,我们每个人都是管理者。

    1.管理是职能而不是职位

    管理学之父彼德.德鲁克曾说:“任何一位做决策的人,其工作性质和董事长,和行政领导相同。即使他的管辖范围有限,甚至于他的职能或他的大名,不见于组织系统里,办公室连专线电话也没有,但他确实也是一位管理者。”

    可见管理并不是经理、老总的专权,管理不是个职位,而是个职能。无论你在什么岗位,也不论你有没有下属,只要你需要做出决策,需要对结果负责,那你就是个管理者。从这个角度来说,我们每个人都是管理者,因为每个人都需要对自己的生活的工作负责,对碰到问题进行权衡决策,只不过决策的内容不一样而已。

    程序员显然也需要对工作进行决策。当接受任务时,程序员需要对工作量、工作难度、时间限制进行评估,以确定能否实现项目经理的目标;开发一个功能点时,我们需要思考哪些实现方式,哪种方式开发速度、运行效率、对资源的占用几个方面综合最优;最进度滞后时,是要加班赶回来,还是要调整工作方法,提高开发效率……这些不都是决策的过程吗?在每一个决策点,程序员完全可以像一个真正的项目经理一样,发挥其主观能动性,主动进行管理,保证任务又快又好的完成。我们的管理才能,就在这一次一次的决策过程中,逐步积累、逐渐提高。

    管理只是一项职能,人人都可以随时随地履行这项职能。可惜的是,很多人没有意识到这一点,不自觉的放弃了这项可以做而且应该做的工作,这不能说不是一种“失职”啊。

    2.自我管理是一切管理的基础

    管理有一个流行的定义,叫做“管人理事”,既然是管人,那必须得有人可管。有人说,我没有一个下属,只是一个“光杆司令”,要说我是管理者,那我都管了谁呢?

    其实只要在社会中,没有谁是真的光杆司令,你管理的不一定是下属,每一个你需要打交道的人,包括你的领导,都是你的管理对象。退一步讲,即使你不需要跟任何人打交道,你也可以、而且必须管好一个人——那就是你自己。

    彼德.德鲁克说过,“有伟大成就的人,向来善于自我管理。然而,这些人毕竟是凤毛麟角。但在今天,即使是资质平庸的人,也必须学习自我管理。”试想一个连自己都管不好的人,怎么能管得好别人呢?更别说管好一个大的团队了。

    那自我管理该管些什么呢?李嘉诚先生曾说:“自我管理是一种静态管理,是培养理性力量的基本功,是人把知识和经验转化为能力的催化剂。”如果更加直白的说,自我管理实际是一个修身的过程,是一个自我约束、自我磨炼、自我精进的过程。作为一个普通人,哪些方面需要磨炼和精进呢?我想无非是一个人的身心和素质技能两个方面,相应的,自我管理的内容也应该是包括身心管理和个人素质技能管理两个方面。

    (1) 身心管理:包括身体、心态、情绪、世界观、人生观、价值观、人生目标、职业目标等不同层次;

    (2) 素质技能管理:包括学习管理、时间管理等。其中时间管理时自我管理中非常重要的一环,因为它与项目管理、企业管理等内容直接交织在一起。要成为一个卓有成效的管理者,首先就是要能管好你的时间。

    图 自我管理是其它管理的基础

    既然自我管理是一种修身,那也就可以说,自我管理是其它一切管理的基础,因为不论是什么管理,都离不开管理者自身的身心和技能。一个企业中的所有管理工作,从管理的对象来说,可以分为管理者自己、企业中的人和事、企业组织本身以及企业战略方向几个层次,其中管好自己属于最为基础的层次。一个能管好自己的人,才有能力、有精力管好别人,处理好复杂的事务,才能够通透人性,把握组织和市场的规律,成为一个真正卓越有管理者。

    3.每个开发任务都是一个微型项目

    作为一个程序员,也许你从来没有把自己放在项目经理的角度来考虑过问题,但实际上,你不只是一个程序员,同样是一个项目经理,因为每次接受了一项开发任务,实际上就是接受了一个小项目。

    一项开发任务,同样具备项目的典型特征:临时性、独特性和渐进明细。临时性是显然的,因为每一项开发任务都有开发时限,而不是重复无休止的工作,当目标达到,任也就结束了。同时每一项开发任务又是独特的,时间、地点、完成人、成果、项目环境等,总有一样是不同的,就便是其独特性。越往后开发,对细节的把握越具体,这渐进明细。

    由此可见,一项开发任务就是真真实实的一个微型项目。只不过这个项目,只是由你一个人来完成而已。在完成任务的过程中,同样需要像管理项目那样,进行计划、时间安排、偏差控制和领导(自我领导)。

    把自己当项目经理的程序员,才能成为真正优秀的程序员。优秀的程序员,也更容易成长为优秀的项目经理,因为在被正式任命为项目经理之前,他已经负责开发过了无数个微型项目。

    原文链接:http://www.cnblogs.com/watsonyin/archive/2013/01/21/2869987.html

  • 相关阅读:
    LeetCode 42. Trapping Rain Water
    LeetCode 209. Minimum Size Subarray Sum
    LeetCode 50. Pow(x, n)
    LeetCode 80. Remove Duplicates from Sorted Array II
    Window10 激活
    Premiere 关键帧缩放
    AE 「酷酷的藤」特效字幕制作方法
    51Talk第一天 培训系列1
    Premiere 视频转场
    Premiere 暴徒生活Thug Life
  • 原文地址:https://www.cnblogs.com/canwyq/p/3182117.html
Copyright © 2011-2022 走看看