专栏名称: 数据分析与开发
伯乐在线旗下账号,分享数据库相关技术文章、教程和工具,另外还包括数据库相关的工作。偶尔也谈谈程序员人生 :)
目录
相关文章推荐
Java基基  ·  SpringBoot ... ·  2 天前  
51好读  ›  专栏  ›  数据分析与开发

应该做技术还是应该做管理?

数据分析与开发  · 公众号  · 数据库  · 2017-06-03 23:35

正文

(点击上方公众号,可快速关注)


作者:伯乐在线/熊铎

如有好文章投稿,请点击 → 这里了解详情


我在微博上收到过一个女孩子的咨询,她刚工作没几年,是一家外企外包公司的程序员,工作环境轻松,分配的任务简单,每天做完事情后有大把的时间。但是她的工资不高,当前也没有太多晋升的机会。


她在字里行间流露出了很多对项目经理的羡慕以及向往,很想成为一名项目经理,所以她向我咨询,是不是应该考虑另外找一份项目管理的工作或者如何快速的在原来的公司晋升。


其实我想很多程序员都会有上面那个女孩子的那种想法,包括我曾经也有,觉得自己技术做腻了,做烦了,到天花板了,对管理无限向往,觉得管理就是拿根鞭子坐在凳子上指挥一群人做事,每个月还可以拿到很高的薪水,想想就觉得爽。所以当年我为了转向管理,自己学习项目管理知识,考证,提高沟通技巧,向管理层的前辈学习等等,付出了一系列的代价。


不知不觉中,好像有一天我的 title 和”Manager” 就绑到一起了,甩不脱了,手下从一两个人慢慢变成十几个,变成几十个。其实到这个时候,我才明白很多道理:


1. 管理不是一杯茶一根烟,一张报纸看半天。


作为管理者,可能不需要做具体的任务,但是,你必须要为你的团队以及你团队的任务负责。比如做好一个产品,上线以后,出任何问题老板不会去找具体的开发人员,一定会来找管理开发的人。一个管理者,身上肩负的是整个集团的责任,其中任何一点问题都可能需要管理者来买单,压力不是一般的员工能比的。、


2. 管理不是拍脑袋定决策。


我们的影响中,好像领导们都是大腹便便,满脸横肉,开个会昏昏欲睡,有了什么想法一拍脑门,对着下面的人说:“就这样,去做吧”。其实好的管理者并不是这样,在每个细分领域,管理者都需要一定的数据报表作为决策支持,甚至会有很多不同的数学模型用来分析当前状况。所以从这个观点出发,科学的管理是一种定量的,数据化的,而不是单纯的凭自己经验就可以做的。比如在做项目管理时,需要分析关键路径来确定任务前后关系,然后根据任务前导图来配置资源,最后根据资源配置计算项目成本,通过项目成本去对客户进行报价,所以无论是在计算人月数还是人员配置,都不是随便拍拍脑门就得出结论,而是通过科学的计算而得来的。


3. 沟通会占用绝大部分的时间和精力。


在进入管理层后,特别是中层管理层,沟通会占用你绝大部分的工作时间,甚至是非工作时间。其实这也很好理解,因为管理的一个重头戏就是协调和沟通,管理者自己虽然不做任务,但是需要不停的调度该做事的人去做该做的事。但,调度的好并不意味着你就是个好管理者,在下面的人做事情时,管理者还必须注意监控进行的状态,随时准备处理异常和问题,并且汇报给其他干系人。任务结束后,管理者需要分析结果,总结经验教训,并且为下次任务做好准备。所以表现出来就是管理层喜欢开会,周会,例会,早会,站会各种会,开的程序员一脸不满。但实际上开会也是为了沟通,一方面了解情况,一方面分发情况。


4. 管理并不意味着收入增加。


我承认,进入管理层,拿到的工资会涨一些,但是你看不到的是,无论是前面谈到过的压力,还是管理者自己需要面对的问题,都会相应的增加。所以这样看来,每分钱对应管理者所操的心,其实并没有减少,反而是增加的。举个简单的例子,程序员在做好一个功能后就可以高高兴兴的回家过周末,一旦出问题,老板必然会责问管理者,管理者一边要应付老板,并向老板许诺修复的时间,另一方面要好言好语哄着程序员放弃休息赶快解决问题,并且随时向老板报告当前状态。说白了,管理层需要考虑的东西比一般员工要多要全,方方面面都要想到,并且跟不同的人,在不同的场合需要说不同的话,而不是简单的完成了自己的任务就万事大吉了。


当年我认为我自己做技术应该已经到头了,削尖了脑袋也想去搞管理,各种找纯管理的工作。后来天遂人愿,还真找到一份这样的工作,管理运维部的一个部门,大概十几个人。但是当我做这个部门的经理越久,我发现我竟然越来越怀念以前写代码的日子,我发现这并不适合我,虽然我工作做的非常出色。


于是我重新开始写代码,作为一个部门的经理,我开始写一些运维的小辅助工具,直到我重新开始写代码,我才找回了以前的成就感。于是我坚持不断的去更新和维护那些小工具,并且一点一点的解决更多的问题,到后来突然我意识到这些 “小工具” 不再小,竟然已经是我们部门,甚至别的部门日常工作不可或缺的东西,于是我干脆把这些独立的工具集成起来,形成了一个统一的系统,从此以后大家上班第一件事情就是打开这个系统,开始工作。


到这时候,我知道了,我离不开技术,但是仍然可以把管理做好,那么,为什么不找一个集两者为一身的工作呢?于是我到另一家公司做了研发部们的总监,但是我并没有高高在上的天天指挥程序员做这个做那个,而是以资深程序员的身份参与系统设计,并且和大家一起开发,一起加班,但是同时我仍然用我学到的管理技能来管理这个团队,而最终的结果就是大家都服我这个领导,并且爆发出了惊人的战斗力,让全公司刮目相看。


其实,做纯管理并不是一件容易的事情,起码不会比做程序员容易,千万不要以为经理,总监就是拿着高薪敲着二郎腿不干活(确实有这样的人,但是不会多),因为老板们如果脑子没问题的话,是不会花钱养一个什么都不敢的人。在职场中,一个人的薪水一定和他做的事和承担的责任成正比。所以如果你也一心想往管理层冲,不妨先想想两件事情,第一是你的管理能力够吗;第二是这真的是你要的吗?如果你想清楚这两个问题,我想你也就不会再有 “应该管理还是应该技术” 的问题了。



看完本文有收获?请转发分享给更多人

关注「数据库开发」,提升 DB 技能