【第1689期】职业思考:技术人需要突破的 10 个困局
前言
低头写码,抬头看景。不一定适合每个人,但可以与Ta对话。今日早读文章由宋小菜@Scott投稿分享。
正文从这开始~~
为什么社交有时候那么累,是因为每个人都试图施展自己并不具备的能力,为什么你对他人有时候期望很少要求很低,是因为潜在深处你也希望别人对自己也要求低一些,以妥协换满足。
2010 年工作,2013 年初涉创业,至今 9 年,无论是创业还是在职场都趟了不少弯路,前两周对团队做技术管理者套路内训时,把过去的收获整理成这 10 句话,放到了 PPT 最后一页作为结语,感觉过于简练了,打算再做一个更准确的阐述。
这些观点就是下面图上的几句话,分别是:
正视自己内心,对应困局是在工作和人生历程中,总是初心不见,迷茫踌躇,找不到努力的方向
接受人无完人,对应困局是看自己看他人看他事总是不尽如人意,总被不满意不满足的情绪掌控
对抗框式思维,对应困境是分析问题总偏离本源,评估问题过于机械过于直觉,缺少换位和结构化思考
理解人性复杂,对应困局是不懂人间冷暖炎凉与险恶,期望总面临失望,因果关系看不懂看不清
明白商业多变,对应困局是对于既有组织关系和业务模式的变化很难理解,推导链很难建立,不愿执行
逼自己拼大盘,对应困局是对复杂问题如业务盘子缺少感知,无法准确定位自己的角色和未来价值
敢对抗不合理,对应困局是缺少勇气挑战权威,遇到问题总是找借口妥协,慢慢激情消逝,趋于麻木
去创造危机感,对应困局是安适惬意对当下的一切没有太多不满意,对可预见的变化也缺少期待
画大饼算大帐,对应困局是定目标和宣导目标对自己及身边团队影响力有限,无法说服更多人认同并加入
布局未来十年,对应困局是时间过得搜搜快,行业洗牌一波波,自己辛辛苦苦忙忙碌碌却鲜有收获
环境对一个人的塑造是无比深刻的,环境不同塑造的结果差异很大,而组成环境的一个重要因素便是人,你身边的人对你的影响千丝万缕,我们必须看到总是有极少数的人,完全可以独立的思考,可以长远的思考,对环境有很强的把控力,对当下环境的审时度势和自我规划是超强的,这些人往往是我们可望不可及的榜样,而我们大部分人都是蛮普通的,我们努力很久只是让自己变得更加优秀,却很难卓越。
我们先不谈卓越,单从普通到优秀,也有很长的一段路走,在这段路上,我的个人经验是,如果有高人指点、前人指导甚至是贵人指点,都能对你的人生路产生非常深刻的影响,甚至直接切换到一个新的路线上,我在工作的头两年确确实实经历过贵人的指点,其实前后也不过 3 次,但每一次都对我的思考方式是一次完全的刷新,每次都对我重新规划未来起了关键性的作用,自此之后的 6 年之久,我再没有遇到这样的高人,全靠自己摸索,摸了这些年,也算是有一些经验性的方法,这些方法我自认为对于工程师是比较适用的,尤其对于技术管理者是适用的,那接下来我会结合自己的案例,来跟大家做一个更深度的探讨:
正视自己内心
与自己对话是一种能力,你可以问下自己:我有多久没有静静的坐下来,花上 2 个小时,跟自己好好对话了,问问自己最近过的怎么样,距离目标还有多远,过的开心么,有什么收获么,目前的工作和生活是我想要的么,如果不是想要的为什么我没有做出改变,如果是暂时性妥协我想要妥协多久,如果设定个倒计时我会具体到多久,从倒计时倒退到现在我必须要做什么,假如届时我都做到了也改变了,改变后的生活和工作我会怎么过,那样过了是不是我内心就是开心的了….
我工作的第三年,因为薪资和晋升的原因,内心每天非常煎熬,在工作上虽然踏实沉稳全力以赴,但我的意志却被极度的压抑,那时候一年过半时间都在失眠,每天跟自己的负面声音做战斗:既然 hr 卡你,团队也没有给你争取,不如一走了事,既然做这些重复性工作没什么成长,不如一走了事,既然每天这么不开心,不如一走了事,既然业务方和产品经常瞎搞,不如应付了事….
我自己的前途,被押注在了我懊恼的情绪上了,而我情绪的产生,是因为我不能正确的认识到自己,也无法正面正视自己内心,单纯从处境上得结论,而得出的结论对前途的进程没有丝毫的正面作用。我从来没有想过为什么我会不开心,真正的原因是回报和付出不成正比么,其实并不是,而是我的焦躁感,焦躁感来源于哪里呢,是我忘记了自己真正想要什么,我以为我要的是晋升是回报,不否认这是我想要的,但我更想要的其实是技术的精进和能力的提升,以及对于产品更强的认知,而技术的精进、能力的提升和产品更强的认知这三样,并不是工作中不能获得的啊,无论我是否在工作中,无论工作是怎样的形态,当我的注意力放到了这三件事上,我照样可以不断自驱来提高技术,来锻炼能力和学习产品啊,而我如果继续扎实内心在这三件事上,晋升和回报也就自然距离不远了啊,就算晚能晚多少呢,一年两年最多了,但是我眼光放不长远了,内心深处也迷失了,于是越陷越深,最终还是从阿里离职出来创业。
在今天往回看,创业这个路始终是我想要的,对创业我懊恼但不曾后悔过,但技术有成、能力成熟和产品观变强这本就是我当初训练自己为创业做的准备啊,可是我被当时的环境羁绊了,导致并没有把这三个能力打磨的像个样子,就过早的离职出来创业,也草草的堵上后面的三四年,最终以另外一种悲壮的方式收场,用新的一种弯路,来对抗当初的不甘,这就是典型的不清楚自己几斤几两,也不敢正面面对内心的期望,只能以逃避换自安自得,不可取,如果自己不够强大,再怎么挪窝也很难有质的改变。
而很多时候,看不到内心是因为不敢正面内心,不敢正面内心是不愿意正视真相,因为真相太残酷:你现在太不上进,太懒惰,太拖延,太看重一时回报而看不远,被现实浮华糊住了双眼,你甚至不敢主动迈出脚步争取改变,去好好沉淀。可是又有谁愿意主动承认这些呢,于是选择视而不见甚至听而不闻,继续在弯路上走一遭又一遭。
接受人无完人
我们通常不容易跟完全对立的人达成和解,我们跟自己也同样很难达成和解,很多时候只是达到了和平状态而已,而和平只是一种利我利他的状态,它的底下可能是压抑和对抗,可能依然波涛汹涌。
身处一个团队中,上下左右都是同事,工作配合上不可能像是流水线的机器一样,没有丝毫出错,而我们又是一个个的人组成了公司这部复杂庞大的机器,任何螺丝都会松动出现纰漏,纰漏的背后不排除别有用心,但更多是疏忽不小心或者能力不够,这时候我们是严苛一个人的前提是,要知道他本不完美,满足期望和超出期望都是比较美好的结果,不尽如人意的状况反而会时有发生,这就需要从内心中接纳这种现实,同时从组织手段、考核方式、流程规范和沟通中去避免下一次的问题重犯。
这件事情看上去很容易,实际上蛮难,因为我们都假设了自己的立场,以为对方会全力配合,对方完全可以领悟到且有足够能力,最终以失望收场,比如团队里师兄带新人,新人一而再再而三的让师兄失望,师兄一气之下就对他恶言相向,或者对他冷处理不那么热心的帮忙,对新人的成长和团队融入都是未必有利的。再或者对于一个纯实力派的管理者,对于团队成员的期望是很高的,稍有差池就恨不得自己动手去做,这样长久看是不利于团队的健康成长,也不利于帮带环境的逐渐形成。
聊了团队,我想再聊聊对自己的包容,我们对自己苛刻都是个人选择,但苛刻的背后是需要具体行动的,通过行动和行动后的复盘思考来不断优化下一次行动,可有时候我们会在行动结果上一再的纠结,却忽略掉真正需要花精力的地方,而此时我们没有意识到是自己的能力和状态都不够 Ready,自己所经历的这些只是过程,而过程中自己是一次次变得更好但不可能至善至美,尤其我们在做重要的事情的时候,一定要在事后给与自己合理的谅解,不然这份执念会一直干扰将来的行动。
我在创业的中期,是犯了这样一个错误,招了一个还不错的前端,但我对他的期望与他的表现是有一定差距,可是这个差距我无法接受,于是一开始总是忍不住自己动手去做,到后来会对他非常严厉的指责,而不是通过观察和提醒来对他的实力有更量化的认知后,去辅导帮带他,最终再放手授权,这个接受他的过程我没有意识也没有去做,而是简单通过看结果下结论,最终也导致了他的黯然离职,也导致了我相当长一段时间不开心和不理解,为什么我对你这么负责你还认为我有其他用意,时至今日发现是当初自己心理的宽容度和用人的弹性都有很大的问题。
对抗框式思维
所谓框式思维,是我自己发明的词,形容是在一个竹筐内青蛙观天,会被自己的思维框架直接框住,无法跳脱出来。
它的解法其实也很简单,就是换位思考,一旦当我们跟任何一方的意见相左,或者一个明显不符合我们认知的讲法冒出来的时候,我们就换位过去,尝试去理解声音发出者他背后的思考逻辑,而不要本能的用自己的既有观念尝试去打败或者推翻它,通过换位,也许可以发现当事人他逻辑链路中的局限性,也可能会重塑我们自己原本的认知,但不换位过去,不仅对抗的过程很辛苦,结果可能是双方都不受益。
当然也不是说,任何事情都要换位,过度的换位也会成为找理由的土壤,比如下属员工合错分支发布,导致线上故障,这时候不能拿项目紧张啊什么为他开脱,过错就是过错,但当时慌张合并的原因还是值得问一问,是粗心大意,还是工具上面有很多不友好的交互等等,目的是避免再犯。
换位思考只是一种手段,本质上,对抗框式思维,我们是在跟自己的意识框架对抗,这个世界足够的复杂,我们掌握在手中的技能寥寥无几,长在我们脑海中意识层次也非常单薄,特别对于程序员这个群体,对于物理世界的认识与虚拟社会的认识完全是两个极端。
讲一个我的案例,工作的头几年,我非常瞧不起做影响力的同学,觉得非常务虚,非常 KPI,非常不切实际,非常不硬核,总之就是既不理解也不认同更不愿意去做,别提出书著作,就连技术分享甚至写个博客都极为吝啬,我当时其实接触过很多内容创业者和站长,他们也告诉过我影响力的重要性,但都没听进我的心里,我自然也没从影响力中有过任何受益,直到 2013 年冬天当时应慕课网邀请,带着帮助他人更好学习的初心录制了一些 Nodejs 视频,影响力才悄无声息的建立,而我自己对此浑然不知,直到我 2016 年招聘的时候,面试进我公司的居然都是慕课上学习过视频的同学,当时对我整个人的冲击是非常大的,我一直不怎么看在眼里的影响力,居然因为我的无心之作在关键的时候为我带来的巨大的帮助,也是从那时候起我开始不抵触影响力这件事,开始转换观念,去慢慢寻思它的好处,直到 2017 年加入小菜,开始带着前端团队东奔西跑,真正意义的对外输出了一些影响力,才有了今天小菜前端 20 人的完整团队,以及这些优秀同学所承担起来的业务大盘和逐步健全的技术体系,没有影响力的建设,就一定没有小菜前端的现在,而这个建设,恰恰是我过去不曾认同的一环,工作 6 年才开始不抵触它,工作 7 年才开始刻意去建设它,这样的本能意识框架就轻松把我框住 7 年之久。
简而言之,我们总以为的对和错、好与坏、是与非,放在多年的职业生涯中,都会慢慢磨去它原有的颜色,而褪去颜色后的才是真我,而加速对自己的探索,最有效的手段之一便是剥夺自己坐拥已有的意识框架并以为会躺赢的权利,让自己尝试去理解曾经的不理解,去认同原来的不认同,在辩证的选择中揣摩两级之久的可能性,一旦开窍,最终换来的是更加深度的思考力,并以此来引申,才能不断升级自己结构化的立体思考框架。
理解人性复杂
所谓人性复杂,其实是一个太复杂的话题,我自认为是没有能力讲出一二三,只是觉得这个话题值得大家重视它,并且应该花一定的长周期刻意训练自己,训练自己什么呢,其实就是看人观人能力。
生活和工作在这个社会,你身边环绕了太多的人,每个人都跟你有一定面积的接触,而每个人背后都有庞大的家族关系、复杂的人际网络和迥异的社会背景,仅凭一言一行是很难对人有合理判断的,这在招聘的时候尤为突出,如果你是招聘主管,你要决定一个候选人来不来团队跟你合作,其实是很难很难的一个决定。
所以很多时候我们采用做朋友的方式来对身边的人排序,以及基于此对他人进行定义,比如一个候选人我聊下来很投机,很愿意跟他交朋友,直觉告诉我们此人靠谱,可以合作,进了团队后相处一段时间,会不会在出现一些印象上的偏离,偏离的幅度有多大也是很难预估的,举这个例子是为了说看人观人这个能力是没有量化指标的,全靠心里的一把秤。
我自知是工作 9 年,看过不少人性的恶,也见过不少人性的善,但让我再去分辨,我依然是不具备这个能力,我唯一的经验就是:听其言、观其行。
言行一致的人靠谱的概率高,言行不一致的人靠谱概率低,但是否一致其实往往跟人性复杂有关,而跟人性善恶往往无关,我们不能把复杂和善恶混在一起,那样子的判断最终只会一叶障目,误自己前程。
举一个例子:还是我创业的时候,只不过是中后期,公司要被另外一家公司并购,大部分人都很雀跃欣喜,我内心很忐忑,因为看到对方过程上提出了一些反常识的要求,与当初讲的不同,担心被另外一家公司坑骗,但老板被对方老板喂了定心丸,完全放下成见不设防,一五一十完全照做,此时我和其他有同样想法的小伙伴,提醒和建议都无济于事,老板把并购理解为了纯合作利益,而忽略背后人性和利益的复杂,最终不出意料,被对方做局坑骗了整整一年,但此时已付出太多太多沉没成本无法挽回,造成了惨痛的失败:团队 2017 年资金链断裂而倒闭,当然所有人都付出了代价,代价因人而异,至于我,我直到 2019 年 7 月,还在偿还公司续命时借投资人养活团队的钱,人性判断出错后,痛不痛只有自己知道。
明白商业多变
对于商业的理解我也非常浅薄,自知没能力去讨论商业因果,但关注商业这件事是值得我们工程师花精力的,至少要对自己所参与的业务和背后的商业逻辑有一定的认知,并且有自己独立的判断,这种判断能力要不断的历练和修正。
如果不能明白商业的变化性,就很难理解公司为什么每年每季度的战略和打法要常常变化,自然也很难认同背后在产品和技术上的不断迭代升级,也就看不到一次次的变化背后,从技术到产品再到用户,从行业服务和被服务的关系上,到底公司活下来的核心能力是什么,盈利的关键点是什么,越是是资深的工程师越要练习,因为越资深,被授权的范围越大,做出的决策影响面也就越大,所谓授权越大,风险越大。
关于这一点我就不造次了,大家可以多看一些投融资相关咨询,以及一些针对失败倒闭的公司的分析还有不同行业的观察白皮书等等,来训练自己对于生意这两个字的认知深度,从而在上升到商业的高度,当商业敏感度越来越高的时候,不仅对于公司的战略逻辑能更快捕捉到,甚至可以从技术面来发现更多机会点,来驱动和引领业务走出新的可能性,我自己也经历了这样的案例,但目前讲太敏感,就不给大家分享了。
逼自己拼大盘
所谓拼大盘,其实是一种归纳总结的能力,或者说是拆和装的能力,把问题拆解开,把答案装上去,比如我问你要把你这个团队的整体能力提上去,你打算从哪些方面着手?
那我自己从前有尝试回答过这个问题,也给出了自己的答案,今天看还是挺稚嫩的,但可以给大家带来一些启发性,我把图贴一下:
任何一个复杂问题都可以用这种方式来训练,训练的久了,你的结构化能力就会变强,除了团队你还可以针对技术栈,针对系统,针对框架甚至针对技术和业务的结合等任意场景进行拼大盘的思考。
敢对抗不合理
关于这一点很好理解,就是工作中的不合理,是忍受还是反击,我的认识是,反击可能不一定有好的结果,但一定比忍受好,至于不合理的界定,我的看法是,自上向下大家达成共识的部分,就尽量不要挑战它的合理性,未达成共识的部分可以充分挑战,如果这个共识是很久前达成的,时过境迁与当下不适宜,此时要挑战。
所有的挑战出发点,不能只站在个人立场,要站在公司视角看待,我挑战后,能不能让公司变得更好,让团队变得更好,如果能那么就可以尝试做,如果挑战后只有我个人变得更好的,公司和团队不会受益,那么要三思后行可以先小范围论证下。
举一个我的例子吧,依然是创业时,2015 年冬天为了赶项目,我出差到美国加州居住了 2 个月,跟那里的同事汇合开发产品,在我回国前,老板让我在国内的分公司场地安装摄像头,摄像头要对着工程师座位的地方,我首先问了他的初衷,他初衷是担心公司出了什么事(打砸抢之类),好有一个记录,我认为这是不合理的,因为直接侵犯到了隐私,更重要的是,这让工程师感受到了不信任感,有一种被监控的感觉,在这件事情上我跟老板争论了很久,脸红脖子粗,我说就算装也是对着门口走廊就行,如果真要看上下班也可以装个打卡机,摄像头太夸张了,当然最后我说服了公司没做出这个决定。
去创造危机感
当周边环境或者他人带给你危机感的时候,你可能真的危机了。
大家可以把危机感理解为未雨绸缪,把自己代入进去的不同的场景中,就会有危机感,也算是一种主动获取焦虑的方式,通常适用于我们工作一个周期后,驾轻就熟,没什么操心事的阶段,因为通常这个阶段我们会停滞成长限于安逸。
在慕课网有一个跟着我学习 Nodejs/小程序 开发的童鞋,非常有想法也非常上进,他的单位工作不算忙,业余时间全部用来学习技术和充电,做自己感兴趣的事业,比如借助小程序销售老家特产甚至是尝试珠宝生意,而这些都通过他自己用技术的方式把想法实现,不光技术有很大的成长,一年下来的销售流水也有几百万,当我问他精力分配的时候,他提到了他的危机感:
反之,这一年多有上百个童鞋加我聊他们在团队迷茫的情况,不知道何去何从怎么发力,其实我认为有不少童鞋是缺少危机感,空有担忧,更缺少规划,假如这个同学意识到如果是下个月失业会饿肚子,不掌握 React/Vue 全家桶和基本原理一定找不到工作,倒计时开始只有 30 天,我相信每个夜晚每个周末一定会被他充分利用,去尽可能吧填充内心的不充实,但因为明天总是一个可被消费的资产,危机感就没有那么强烈,焦虑反而更强烈,于是一晃一年就过去了。
大家想一下,如果有一天 AI 突然爆发,UI 部分代码只要不是太复杂全部不用写了,简单的流程逻辑也不用写了,甚至跟用户的交互和交易方式也变了,还停留在 UI 实现和简单功能实现的前端工程师,该怎么办,在之前可以做哪些准备,或者说脱离了工程师这个职业,还能靠什么生存,模拟出更多危机感,会利于我们做出应变,也利于我们长出新能力从而发现新机会。
画大饼算大帐
所谓画大饼是基于合理推导,给自己和团队绘画蓝图,所谓算大帐,是根据自己团队的兴趣和特长,将精力放几块可以将大图拼起来,在拼起来的过程中,成本和受益是什么有多少。
比如,我在 2017 年的时候,给架构组的同学梳理了长远建设的课题方向,属于是画大饼:
在之后结合业务和团队的能力现状,阶段性的立项建设,把项目的价值盘点清楚,从研发到排期到最终上线运营以及后续的技术沉淀这一套闭环评估后,要投几个人,预计做多久,预计分几期,这些就算是算大帐了,至于大账是多大,大家自己界定就行,没有标准,小项目也可以很闭环的。
布局未来十年
其实这一点是我最想说的,我们都知道职业规划很重要,但我们中的大部分都做不好,尤其是工作的头几年,根本无从规划,因为对行业的认知,对技术的掌握,甚至对自己的认知都很浅,担心所做的规划有很强的不确定性,比如我在 2011 年年度述职的时候,总监问我的职业规划,我说我希望自己可以独当一面,成为一个前端架构师,而当时我其实对架构师一无所知,只是觉得名字贼酷也看上去是一个技术终点,而我给自己设定的 deadline 是 2 年内,那么显然我没完成自己的规划,不仅如此,我还步入了完全另外一种创业的旅程。
那我当时的规划是不是瞎想的用来凑数呢,其实也不是,我当时也是非常仔细的思考了,也仔细的规划了,大家可以看下我在 2011 年初,还没有述职之前,对自己的半年总结:
半年总结:
业务方面:
一、钻石展位:日常功能维护与 2.0 新功能迁移;
1、计划消耗;
2、bannermaker 接入;
3、账户诊断;
4、群体投放;
5、定价投放;
二、明星店铺:主站搜索与店铺搜索;
1、第一期改版上线主搜;
2、第二期改版上线主搜与店铺搜;
三、MiniSite:
1、万塘书院从 Minisite 中独立出来,成为子站点;
2、超级麦霸,钻石展位,第三方服务平台;
四、TMS:淘宝联盟、E淘、促销活动,频道页面制作;
五、BP 后台:后台邮件,站内信兼容版本开发;
六、直通车论坛:论坛帖子,活动页面制作;
七、Sinba 后台:拖曳模块,树形结构,以及整站改版;
八、外投广告牌:对北京外投广告牌的支持,多尺寸广告牌的制作修改(针对 Yahoo,优酷,搜狐等主要门户网站),特殊版本(凤凰网,新浪网投放要求)的开发;
九、无线商搜的手机页面制作;
团队建设方面:
公司的团队生活与建设方面:带领球队共 16 位队友,进行了 25 场次的训练与比赛,包括杭州师范学院,杭网俱乐部,杭州尤文图斯,淘宝球队,淘宝商城球队等进行过多次的联谊球赛;
半年出现的问题
一、项目进度的把握程度:作为前端 UED,对项目的把控能力还不够强势;
二、与多部门协调的能力:协调力度不够,成熟度欠缺;
三、对产品诞生过程中的影响力:影响力范围及力度不够;
四、技术层面的成熟度(既定时长内,需求价值,应用场景,开发周长,技术实现,维护性与扩展性,以及上线反响所综合考虑的最优折衷度):特殊场景下的需求PK与处理娴熟度不够;
其实可以看到,我那时也算是一个很勤奋(无数加班狂做很多项目,半年的经验可能顶的上别人一年半的简历),也很会主动思考的童鞋,再对比我自此后带过的很多毕业生,在半年内能做这么多,并且具备我这样的总结能力的其实是不多见的,勤奋如我主动思考如我,为什么还做不好自己的职业规划呢?
其实就是对自己的认识还不够深刻,只停留在技术的层面,并且对于这个行业的积累还太少,也不知道前端会变成什么样,除了架构师还有什么可能,就算是架构师,架构师需要什么技能,这些技能分别是什么,代码能力占了多少比重,统统这些是我当时还不擅长思考的,我想的都是如何把项目做快做好,如何多学一些编程技能。
那规划都做不好,怎么布局职业十年呢,我的看法是,在工作的头 3 年,就拼命逼自己的技术成长,在这中间历练沟通能力、协作能力和项目综合把控能力,这个阶段的确是很难做中长期规划的,在这三年中让自己变得技术足够硬足够强,然后从第三年开始,去刻意训练更多的软实力,也更多的向内去挖掘自己的潜能,看自己适合什么,擅长什么,想干什么,然后再基于此做自己未来 10 年的长期规划,一旦有了这个长度,眼前的这两年三载你都不会很纠结,因为方向清楚了,只是不同阶段你要关注什么的问题。
而我自己开始有意识的布局未来 10 年长度的职业方向,是从 2017 年开始,也就是我工作了整整 7 年,我才把自己看清楚,我才有把握对自己做一份能履行有价值可量化的规划,我相信大家如果经过这篇文章的点醒,一定可以比我醒悟的更早,也规划的更早更好,规划不仅仅是那个未来的结果,其实更是这个路上自己如何成长,左右摇摆都没关系,只要那个方向依然明确,脚步依然超前,那么目标势必会越来越清晰可见。
关于本文
作者:@Scott
原文:https://www.yuque.com/sxc/front/gsvr3x
为你推荐
【第1380期】如何像程序员般思考 —— 蕴含在问题解决中的经验