为什么要说这么一个"过时"的话题,源于最近我的一位下属问我:“我不知道怎么去拿到更好的绩效”,作为他的直接leader,在公司的大环境以及团队公平的前提下,我和他都很清楚,很难拿到“A”的绩效。但他的问题,让我思考了好久,作为一名“技术人员”该如何发展。
我这里说的技术,其实包含需求分析师(产品经理)、开发工程师(后端、前端)、测试人员等,相对广义的范畴。
从宏观角度看技术人员的发展路径,基本都会从一名初级、中级、高级、资深(专家)、(XX经理)/(架构师)、XX总监、XXVP、CEO/老板这样一条路径。
从微观角度看个人的日常工作,原型设计、代码编写、测试等琐碎工作。经常发现有很多时候,累的要死,但效果甚微,自己不满意、领导好像也不满意。
结合宏观和微观的角度,刚工作,职位比较低的时候,很容易得到被认可,绩效也会很高,到了相对中高级之后,其实就有点难,纠结也更多。
从我个人发展来看,工作早期,工作大部分是被安排的好好,只要按照要求做就行,如果你能更快完成,就能得到更好的回报,相对单纯;当被升级到中高级岗位之后,领导对你的期望提升,而你自己并没意识到,这就好造成认知偏差;也可能你觉得该给我升级了,但领导好像没有这个意思,你也不知道为啥。从底层逻辑上来说,这涉及一个主题:管理。
我相信很多程序员要都不想做管理,一说到管理就头大,都想在相对单纯的环境工作,拿到自己的回报。但事实上呢,有人做过调研:超过 80% 的技术管理者,都是在没有明确表达管理意愿的情况下,被公司推到管理岗位的。从某种角度上说,管理对于很多技术人员来说,也算是需要基本具备的一个技能。
学习管理到底对我们有没有帮助呢?
我觉得管理可以帮助我们做好几件事情:
1、宏观上,职业规划,用管理的方法是有帮助,分析我们的现状和目标,制定每一阶段职业发展目标和路线图;每个人都会面临技术和管理的十字路口选择,到这时候,“带团队”不再是一个可选项,而是迟早都要面对的事儿。做技术和带团队,更像是职业发展的两条腿,而不是完全叉开的两条路。做技术和带团队,更像是职业发展的两条腿,而不是完全叉开的两条路。当发展到技术总结、项目总监等岗位,管理会占据着主要的职责。
2、每天的工作中,管理帮我们列出待办事项,整理好优先级;
3、和身边的人,管理帮我们确定沟通时间、沟通频率和沟通方式,特别是汇报工作,技术人员的短板。
要不要学管理,其实不是一个问题,而是一个必然。当然管理,不一定是考PMP,读MBA等,主要是需要具备管理思维,掌握基本的管理技能。
后续我会就具体的管理技能展开专题,不论你是还在做技术,希望未雨绸缪地对管理有个初步的了解;或是你恰好处在转管理的节骨眼儿上,对怎么做管理感到迷茫,希望自己的经验能够对你有所帮助。