今天刚好有幸和小红书企业信息部的一位总监进行了一个交流,我问到了一个问题,就是作为一名技术leader,怎么样让自己的技术有所成长?
说说背景,作为一名技术Leader,他的核心的责任一定是带领整个团队成功,那么就避免不了要去处理很多团队相关的事情,比如在业务方面要去协同,要去宣传技术能力以争取到资源投入。同时作为一名技术Leader要有很大净精力要投入到团队的人员管理里面去,特别是团队里面出现了异常的情况,比如员工引起系统故障等。
上面两部分有些时候就会耗尽了Leader大部分的精力,对于一些业务性导向的公司来说更是如此,可能很多技术主管80%的精力全部投在业务上。
Leader把精力投入业务本来无可厚非,但是对于Leader自身的技术成长,或者是为了跳槽到其他的公司,就会出现非常大的一个问题。
这个问题的本质就是可迁移性。具体来说,Leader的管理经验是可迁移的,但是Leader的业务能力有可能它是不可迁移的,同时新的公司对你的技术方面也有一定的要求。而技术本身也是可迁移的,所以对于很多公司来说,招聘一名技术主管是至少需要管理和技术两个基础条件的,而很多时候业务经验往往是对方公司不看重的,特别是当跨业务跳槽的时候。
比如从百度搜索跳槽到淘宝电商,从淘宝电商跳槽到抖音直播,这些业务上不太适配的时候,对方会重点考核技术深度来判断是否Leader是否合格。
我刚才说过,技术主管如果大部分时间花在了业务上面,怎么样保证自己的技术有一定的成长,甚至在某一些方面有更加深入的研究呢?这里就出现了结构性的矛盾,即用人单位单纯通过技术深度来考评Leader,而一名Leader的核心可能并不放在技术上。
这位小红书的总监给了我以下的几个分享。
首先,作为一名技术主管或者Leader,更加关注的一定是全局性的问题,所以在技术的细节上已经不可能像一位一线同学一样能够熟悉每一个细节,毕竟Leader也无法每天坚持写代码。
其次,站在他的角度来说,更加关注的是Leader整个技术架构能力、业务判断能力和团队管理的能力上。对于小红书来说,他就认为,考核的时候可能就不太会关注一位主管对于每行代码具体的细节能力,但是会关注对于系统架构设计的细节、难点考量、风险点把控等等。
最后,对于Leader来说,可以不用写代码,但是技术敏感度是一定要具备的,比如说在系统设计的时候要考虑到的因素是什么,然后解决复杂问题的时候,一些边界条件是怎么样去思考的,然后对于常见的技术上面的一些考量和判断是什么样的,系统的复用性等这些是他比较关注的一些东西。
然后说说我对于Leader的技术成长的看法。
如果一名技术主管的技术不行,那肯定是不合格的,就像我之前提到的Leader能力模型,就是像战略轰炸机,平常在万米高空翱翔观察和设计全局战略,必要的时候就俯冲下来精确的定点轰炸。我觉得这也不是一名技术主管应该追求的事情。作为一名技术主管或者Leader来说,应该是有一定的自我要求的,也就是技术一定是不能差的,某一些方面你应该是特别优秀的,可以超过一般程序员的理解力,甚至在某个方面的架构、技术深度是超过团队所有人的。比如我所在的业务是钉钉工作台,核心是PaaS架构,我可能对里面具体用到了什么前端技术、降级技术不太熟悉,但是我对于整个PaaS的设计架构、生命周期划分、系统难点和可扩展性设计一定是团队内部最好的。我甚至完全可以判断下个阶段的PaaS演进方向是什么。
那一名技术主管到底该怎么样去成长呢?或者说在什么样的一个尺度上面保证自己的技术的优点呢?
我之前有一篇文章说过了一名技术leader应该具备什么样的一个技术能力,那主要总结就是两点,第一点就是宏观的设计能力,第二点就是在部分细节上面的把控能力。
所以首先一个业务的判断力是最为首要的,也就是如果一名技术只是沉迷于技术本身不能自拔,一定是不合格的,Leader的核心技术能力不在于「炫技」,而在于「解决问题」。因为对于我们目前的情况上来说,大部分的应用系统都是为了快速支撑业务发展的,所以业务先赢,业务第一,这个是毫无疑问的。如果真的对技术非常痴迷,又想快速跳到管理层级的话,那么可以做一些非常底层的产品,比如说数据库,比如说芯片等等,这种行业不妨碍你技术做得深,还能走管理路线。
其次,Leader对于一个系统的核心架构能力一定是非常非常清楚的。也就是你不管对你的业务系统有多了解,但是你必须要把握你整个系统的核心结构是怎么样的,哪些地方是有瓶颈的,哪些地方是解决过的难点,哪些地方是可以扩展的,它跟别的系统的核心差异是什么,它有什么样的一个能力特性。这些你都要从技术的角度能够描述的非常清楚。
再次就是对于一些技术细节的把控能力,比如说你的系统是怎么样解决大流量情况下的一些并发问题,它是怎么处理的,用到了什么样的技术,你认为的难点在哪里,以及你具体是怎么解决的。这些地方是一些非常细节的点,非常考验你对于这个系统细节的了解,你不能只是泛泛的讲一个概况,而不清楚里面具体的实操步骤。
最后我觉得就是一名工程师的基本要求了,比如说要保证自己对于代码的一个上手的手感,要充分的了解设计原则,要充分的把握团队review,要有复盘机制,最后就是不断对自己提高要求,对于新技术的探索的兴趣、思维逻辑的训练、竞对技术的了解等等。
所以综合下来看,我觉得大概应该就是这些要点,我觉得要不断提高业务洞察力的同时,还是要保证自己对于某一些技术的一些乐趣和兴趣。毕竟一名Leader本来就是既要又要还要的过程,这也是一名Leader的自我修养,在追求成长的同时,也快乐工作,幸福生活。
公众号:ali老蒋
标签:业务,TechLeader,技术主管,对于,成长,技术,如何,一名,Leader From: https://blog.51cto.com/u_15990596/8319157