做管理就可以高枕无忧了吗?
在程序员群体中,经常有这样一种观点:30 岁了还没做管理,是不是很失败?年纪大了,卷不动了,不转管理不行了!但是你转管理之后,真的就高枕无忧了吗?我将用我的亲身经历告诉你,转管理并不是银弹,转管理并不意味着高枕无忧。
困局
我在 2019 年的时候开始带团队,团队人数大约在 10 个人左右,到现在已经大概有 2 年多的时间了。在一开始的时候,我和许多刚刚做管理的人一样,很多事情都亲力亲为,也不懂得授权,所以在刚开始的那半年时间里,我忙透了。
慢慢地我开始有意识地将培养团队核心骨干,将业务分拆成几块交给他们单独负责,并且也学会了授权他们,让他们懂得这是他们的责任。而我自己也控制着自己,企微群里发生各种问题,我不再向之前那样冲在最前面,而是让他们自己解决。类似的事情还有很多,但他们都有一个共同点,那就是我退居幕后,让小伙伴们顶上去做事。
就这样又过了半年时间,我基本上完成了管理者的蜕变。我从一个一线执行者,变成了通过别人完成任务的管理者。现在的我不再那么忙碌了,我学会了如何合理分配任务,学会了如何运用团队的力量去完成任务,而不是自己一个人盲干。
在这之后的一段时间内,我也开始阅读不少管理书籍,尝试着在管理上能再有所进步。与此同时,公司也组织了领导力培训,我也学会了如何进行绩效辅导,如何进行绩效沟通。我从之前觉得管理是一门玄学,到现在认为「管理是一门可以习得的技能」。表面上一切看似岁月静好,但是我却慢慢地迷茫了起来。
我迷茫其实是在管理与技术方向上看不清未来的路。按目前的情况来说,我已经走上了管理路线,那么理应是继续走管理路线,想着往上晋升发展。但做过管理的人都知道,管理晋升这件事情,不仅要看能力,也要靠机遇。经过一番分析之后,我发现想要再往上晋升,几乎不可能了。
往上晋升不可能,那么只能在外部寻找机会了。但事实上,作为管理者跳槽,其实是非常艰难的事情。一方面做了管理之后,技术熟练度会明显弱于一线开发,并且其技术能力也会踏步不前。而不管你在这公司做得再好,你换一家公司,技术能力的考核是少不了的。我作为 Leader 面试的时候,也看过了不少其他公司的 Leader 来面试,很多人基本连一面都过不了,就是因为技术水平不过关。
于是我就陷入了困境,一方面不愿意放弃 Leader 的职位,一方面技术上也陷入了停滞。就这样我又迷茫了一段时间,不断地在思考这个问题。直到我看到了周志明写的一篇《程序员之路》,深深地引起了我的共鸣。
程序员,字面意思是指编写程序代码的人。但有不少的程序员的认知里,今天去写代码,目的却是为了日后可以不必再写代码。
与此相对的另外一面,业界普遍都认可程序员是相对单纯,不必琢磨复杂人际心思的职场群体,这群人天生带有一种工匠式的图腾崇拜精神,本质上与旧时的小手工业者并没有什么区别,都奉行达者为师,不迷信管理他们的人,但充分尊重能够指导他们的人;都带着些许理工钢铁直男式的直线思维,爱讲逻辑爱讲道理,万一讲不通,起码还能“Talk is cheap, Show me the code”,从这个角度来看,一个对事不对人的、爱讲道理的群体,又怎么可能会难缠难管呢?
久而久之,你对代码、技术、产品状态与团队研发状态的理解,渐渐和团队成员产生了偏差错位,丧失了细节上给予指导的能力,丧失了专业问题上提出接地气解决方案的能力,只能在无法“Show me the code”短期难以校验对错的大战略方向提意见,在会议、流程及团队管理措施上下功夫,在职业经理人式的宣讲与汇报上寻找存在感,此刻,你便从团队的导师变成了管理者,最终你与团队的关系,从携手并肩奋斗的伙伴,完全演变成只能靠公司制度与管理职位的权力来维系雇佣关系。
我也相信假如能够轻松地做好技术,没有人愿意随便放弃。我所听过的离开技术一线最常见的原因是“年纪大了,时间不够用了”或要“聚焦精力去做管理了”。对这种现象我的看法是:确实很难轻松地做好技术,但是做在好技术工作的前提下,却有可能较为轻松地做好架构和管理工作。
简单地说,周志明认为程序员不要轻易放弃编码,而是要时刻保持在一线编码的位置上。一旦管理者脱离了一线编码,那么就像脱离了人民群众一样,你的任何决策都将不接地气,最终变成了一个只能依靠权利来维系你的地位的人。
如对这篇文章感兴趣,公众号后台回复「程序员之路」可获取文章地址。
当看到这篇文章的时候,我似乎找到了自己未来的方向,慢慢明白了自己应该怎么走!
破局
作为管理人员,就代表你与公司的业务是绑定在一起的了。此时公司对于你对业务的理解更高了,而对于你在技术层面上的要求降低了。因为在公司看来,没有什么技术是解决不了的。如果解决不了,那么就招一个技术专家来解决。所以你不必是团队里技术最强的那个,而只需要合理利用公司给的资源,帮公司把这摊子事做好就可以了。
题外音:这就是公司人才体系建设的重要性了,可以让公司不依赖任何一个人,可以更健壮。
在这种情况下,如果你自身没有足够清晰的目标,不知道自己的方向在哪里,而只是跟随着公司的需求往前走,那么大概率你会陷入迷茫。你会发现自己整天忙得像狗一样,但是好像什么都没有成长。因为你做的事情都是沟通协调的工作,这些事情与公司的业务耦合度极高,而这些工作脱离了技术一线,你的技术能力并没有不断成长。
这时候你会很迷茫,会想着我应该怎么走,我的方向在哪里?
往管理方向发展呢,好像公司内部晋升太困难了,并那么多坑。向外发展跳槽去更好的公司,自己的技术能力也没那么强,去面试了几家发展都灰头土脸地失败了。对内发展受阻,对外技术水平不够,怎么办?
管理人的双重困局,其实有一个破局之法,那就是 —— 终身学习。
很多人将转管理视为逃避学习的方法,于是他们转管理之后就不学习了,转头去搞业务去了。表面上搞得风生水起,殊不知背地里险象环生,是在偷偷地给自己自掘坟墓。对于技术人来说,除非你转去做产品了,否则你绝对不能脱离一线编码,不能脱离最新的技术。
程序员,字面上就是编写程序代码的人。但有不少的程序员的认知里,今天去写代码,目的却是为了日后可以不必再写代码。但当他们真的脱离一线编码之后,他们发现自己丧失了细节上给予指导的能力,丧失了专业问题上提出接地气解决方案的能力。于是他们就变成了依靠管理权利来维系自己地位的管理者了。
而要避免这种情况的发生,唯一的办法就是自己也参与到一线的编码工作中去,而且是要去做最核心的、攻坚的工作。 就像润之先生所说,深入到人民群众中去。这样你才知道他们的情况如何,才能更好地做决策。这也是我过去两年来的切身感受,很多事情你不自己亲自去做,你会被蒙在鼓里。而你自己也正因为有了持续不断的一线编码工作,你的技术能力也得到了成长。只要你的能力是不断成长的,那么你也不用担心自己会被抛弃。
这时候有些人会说:做 Leader 平常就很累了,好多人找,开会开个不停,哪有时间写代码。确实,做 Leader 有很多好处,例如:可以自己挑选做哪块工作、可以接触到更多的信息。但是也有坏处,那就是事情繁琐、会议繁多。但如果你因此就放弃了编码工作,那么你就陷入了管理陷阱,进退两难。
其实解决这件事情的方法有很多,例如你可以白天开会,晚上写代码。你也可以通过授权、沟通等方式,将一部分的事情分配给小伙伴们去做。解决事情的方法有很多,很多时候就看你想不想做,愿不愿意做。放弃了编码工作,你就放弃了技术进步,就变成了一个只会傻傻指挥的木头人。与其进退两难,等着历史的车轮从你身上碾过去,或许你应该庆幸现在自己还有选择的机会。
而一旦你开始这么做了,你的前途将是一片光明的。作为 Leader 的人能够知道公司的更多信息,能够把最有成长、最优技术挑战性的任务给自己,你的技术能力就不断得到了提升。而你的技术能力得到了提升,你在寻找外部机会的时候就有了技术底气,而你的管理经验又会给你加分。而反过来,你在就业市场上越有竞争力,你在公司内就越有被重用的机会。你会发现因为你的技术能力成长,帮你破了进退两难的局,帮你打通了公司内部与外部之间的良性循环。
总结
回到文章开始的那两个问题:
30 岁了还没做管理,是不是很失败?
年纪大了,卷不动了,不转管理不行了!
当我们说出提出这两个问题的时候,我们都是把管理当成了救命稻草,但事实上管理并不是银弹,也不是救命稻草。做管理固然可以带来一些好处,但如果你不知道自己的目标在哪里,那么非但转管理救不了你,还会让你堕落得更深。做管理会让分散你的精力,会让你的技术陷入停滞,会让你的选择面更窄,会让你陷入一种虚假的繁荣。而这唯一的出路,厮以为是:终身学习,不断学习。
你只有保持生活与工作的平衡,树立终身学习的信念,你才能不断进步,你的焦虑也才会慢慢褪去。 人生是一场马拉松,有些人起跑得快,但不一定能跑到终点。而有些人虽然跑得慢,但是节奏合适,竟然越跑越快了!我们要做的,就是找到自己的节奏,不断地在终身学习的路上跑下去!
学海无涯苦作舟,书山有路勤为径!加油吧,朋友们!
我是树义,我们下次见~
推荐阅读