关于博客
博客对我的一个重要作用是保留记忆。“好记性不如烂笔头”,生活中不时看到一个场景、听到一首歌,仿佛似曾相识却又说不上来。过往的记忆,无论酸甜苦辣咸,都值得保留下来。
另一个作用是梳理思路,从自己了解到能够给别人讲清楚,还有很长的一段距离。能够把复杂的系统抽丝剥茧,用不那么多的名词解释清楚,实在是一件很美妙的事情。
白乐天每作诗,令一老妪解之。问曰:“解否?”妪曰:“解。”则录之;不解,则易之。
这段话描述的是唐代著名诗人白居易(白乐天是他的字)的一种创作态度和方法。白居易以其诗歌通俗易懂而著称,他力求让自己的作品能够被广泛的社会阶层所理解,尤其是那些文化程度较低的人也能欣赏。
在这段描述中,白居易每完成一首诗后,都会让一位老妇人来听他读这首诗,并询问她是否能理解其中的意思。如果老妇人表示理解了,白居易就会把这首诗记录下来;如果老妇人表示不理解,他就修改这首诗,直到老妇人能理解为止。
这种做法体现了白居易追求诗歌通俗性的努力,也是他对文学普及和传播的一种贡献。通过这种方式,白居易的作品更加贴近人民的生活,使得他的诗歌流传甚广,深受人们喜爱。这种创作方法在当时是非常新颖的,也对后世产生了深远的影响。
程序员不培养这三个能力,再好的职业规划也是纸上谈兵
为什么工作几年后,手头的工作都可以有游刃有余地完成,但重复的工作开始让自己感到厌倦?
为什么明明公司蒸蒸日上,技术能力逐渐提升,可到了一定阶段,为什么活越干越快,越干越多,涨薪轮不到自己,晋升也没有自己的机会?
整体经济增长放缓,为什么我们这一代,不但吃到红利,却又被迫开始内卷,导致自己充满忧虑。
提起职业生涯指南,你或许会觉着,想这些好麻烦,我就想当好一个大头兵不行吗?
可你总会遇到瓶颈,你总会希望有人告诉你,你需要在哪里提升,每个人的内心都渴望改变,渴望成长。
每个人的职业生涯规划不同,处于的阶段也不同,但我们需要有全局思维,看看我们当下处于什么阶段,接下来去往什么方向发展。
今天想和大家聊一下,无论未来规划如何,工作中底层不变的几个能力,分别是职业能力,行业认知,内在心力。
职业能力
提到职业能力,大部分程序员都会眼睛放光,这可是我们的强项。
后端同学会说:我能力特别强,熟悉Java、C++等多种开发语言,精读各类框架源码,熟悉数据库、缓存、消息队列、网络balabala....
前端同学会说:我知识面非常丰富,原生js、Vue、TypeScript手拿把掐,各类性能优化轻松拿捏。
大部分程序员,都会很注重技能的积累,但职业能力,不仅仅是技能,还包括技术深度、管理,我们一个个来说。
技能:常见的开发语言,架构,网络,数据库等,概念是否听过,是否能在生产上应用。
技术深度:掌握了技能,显然是不够的。两个开发人员,同样是去数据库查询数据,你能够查出来,万事大吉了。但别人却知道数据库的存储逻辑、查询逻辑,以及如何优化查询语句,让查询速度变得更快。
管理:当你有了技能、能力,这些能否复制,是否可以培养出一批人,带着团队取得结果。
这个阶段 上面三个维度修炼不到位,很容易就会受到社会的毒打。
职业技能单一,工具掌握熟练,但是缺乏专业性。会写代码,能干活,但是遇到疑难问题,比如线上页面加载慢,后端服务压力过大,完全没有思路解决,只能求助于领导、同事帮忙分析。
这一问题常出现在工作3-5年的程序员身上,因为成为团队的中坚力量,不再限制于写代码,承担了更多和生产环境相关的工作,面试时,公司也倾向于考察专业性与解决问题的能力。
综合能力欠缺,技术水平很高,工作中和技术相关的疑难杂症都可以解决,成为团队中的核心人员。此时更多接触目标业务目标制定、跨团队协作、带领小组完成目标,此时对于沟通能力、业务能力有了更多的要求。
这一问题普遍出现在5-8年的程序员身上,技术的本质不过是工具,更多的是解决实际场景遇到的问题,和完成公司制定的目标。
后面你会面临成为某一个小项目的负责人,带着他们完成业务目标,但是沟通不顺利,你可能会发现,为什么别人不能像你一样,认真负责,该加班加班,该学习时学习。
这一问题会出现在承担管理岗位的程序员身上,或许你有丰富的技能,专业的经验,但是这些无法复制给团队的成员,自己变身救火队长,心力交瘁。
行业认知
行业认知是什么?
你的行业服务的客户是谁,你对客户了解多少。
企业是如何盈利的,在行业中主要竞争对手有谁,市场占有率在多少?
当前行业发展形势如何,未来发展空间有多大?
比如你做互联网2C业务,用户分层了吗?为什么这么分?每一类的特点是什么?
什么是2C业务? 2C业务是指面向消费者的业务,即直接向最终消费者提供产品或服务。 这种业务模式通常通过线上或线下的渠道进行销售,直接面向广大消费者群体。
2C业务通常可以使用AARRR 漏斗模型进行业务分析, AARRR 这 5 个字母分别代表 Acquisition、Activation、Retention、Revenue 和 Refer五个英文单词,它们分别对应用户生命周期中的 5 个重要环节:获取(Acquisition)、激活(Activation)、留存(Retention)、收益(Revenue)和推荐(Refer)。
增长黑客之父肖恩·埃利斯(Sean Ellis)在 2010 年提出“增长黑客”这个概念的时候,就把 AARRR 漏斗模型作为核心模型,他在《增长黑客》这本书中基于这个模型总结了很多成熟的落地技巧。
AARRR 模型的核心就是以用户为中心,以完整的用户生命周期为指导思想,分析用户在各个环节的行为和数据,以此来发现用户需求以及产品需要改进的地方。
我们以《英雄联盟手游》举例。
英雄联盟手游的用户是怎么来的?比如朋友圈中,你会刷到游戏的广告,你点进去开始玩,游戏公司成功获取你这个用户。
你下载了游戏,上去看了看,没有喜欢的英雄,电脑端的皮肤也不同步,算了,先不玩了,怎么办?过段时间,给你发通知,免费送你皮肤、英雄,优化匹配机制,你有了皮肤心情舒畅了,队友也都带你飞,你真正开始玩了,你成功被激活了。
你水平非常高,即使带着妹子也能一路上分,很快打到王者了,无敌是多么的寂寞,没有对手,怎么办?
区分赛季,赛季结束,段位重新匹配,本来王者,一下子成了钻石了,又要开始重新上分了。再来个elo机制,你太厉害了,匹配几个水平较低的队友,上分难度加大,激起你的胜负欲,一轮又一轮,一局又一局,你每天打两把,每天都上线,游戏成功把你留存了。
总是这几个英雄,自带的动画、衣服都看烦了,上分上不去,怎么办? 来,一轮又一轮的新皮肤上线,一个有一个的促销活动,一个又一个好看的动画特效,你总会忍不住充一笔钱,游戏公司终于有收益了。
水平越来越高,皮肤越来越多,必须得有人分享自己的实力与喜悦,邀请好基友下载,快来和我开把黑吧!你看,游戏又拿到了推荐来的用户。
例子举完了,2C的业务,可以从这个业务模型,试着去往公司的战略、发展目标去靠。
同样,不同行业有各自的发展规律,分析手段,能力原因就不过多展开了。
时刻通过行业模型去问问自己,你的职位服务的是谁,你在其中发挥了什么作用,产生的价值是什么?你的认知能力将会越来越高。
内在心力
什么是心力?百度百科是这么解释的。
心力是指精神和体力,包括心思和能力、精神与体力、思想和才智。心力不仅包括积极的心态,也包括成熟的心智和健康的身心,它是一切成功的基础
说到心力,不得不提到最近被提的越来越多的“35岁危机”。
面对行业、公司压力,是否能从迷茫的负重前行,到成长后的举重若轻?
互联网裁员、就业环境差,能否从悲观情绪转向乐观?找到能力不足提升自己,或者换一个赛道去做自己喜欢的事情。
岗位变少,晋升机会变少,能否接受失败的概率,继续努力下去或者换一个地方重新开始?
说在最后
好了,文章到这里就要结束了,感谢你能看到最后。
其实我们从不需要别人帮助我们做什么职业生涯规划,我们只需要持续的成长,持续的去做正确的事情,最适合自己的职业规划自然浮现。
程序员还是得明白,除了技术,你必须学会与人沟通
工作越久,越觉得沟通能力重要,所以今天想和大家聊聊一个被挺多程序员忽视的能力,沟通能力。
因为忽略沟通能力,自己也吃过不少亏:
遇到问题不知道该请教谁,怕被别人觉着自己菜,怕麻烦别人,最后只能自己死磕。
跨部门协调时,自己的催促总是被人忽视,永远得到的是“我还有事情在忙,你先等等”。
日常只会低头写代码,甚至不知道代码为了谁而写,公司的方向、目标一概不知。
职业生涯感到困惑,想升职加薪,却又不知道如何向领导开口,到离职可能都没和领导私下说过10句话。
既然我们聊沟通,你是不是以为我要聊沟通的技巧、沟通的方式这些,当然一些方法很重要,但方式方法只能算是“术”的层面。
那些在职场中沟通顺畅,让别人愿意配合,被人信任的那些同事,仅仅靠的是方式方法吗?想要沟通更加轻松、顺畅,我觉着最终要的,还是取决于你是谁,你的表现如何,你能提供什么价值。
话不多说,我们开始吧。
横向沟通
先说横向沟通,就是和没有汇报关系的同事或者合作方的沟通,也是我们在工作中,需要沟通场景最多的地方。 因为忽略沟通能力,自己也吃过不少亏:
遇到问题不知道该请教谁,怕被别人觉着自己菜,怕麻烦别人,最后只能自己死磕。
跨部门协调时,自己的催促总是被人忽视,永远得到的是“我还有事情在忙,你先等等”。
日常只会低头写代码,甚至不知道代码为了谁而写,公司的方向、目标一概不知。
职业生涯感到困惑,想升职加薪,却又不知道如何向领导开口,到离职可能都没和领导私下说过10句话。
既然我们聊沟通,你是不是以为我要聊沟通的技巧、沟通的方式这些,当然一些方法很重要,但方式方法只能算是“术”的层面。
那些在职场中沟通顺畅,让别人愿意配合,被人信任的那些同事,仅仅靠的是方式方法吗?想要沟通更加轻松、顺畅,我觉着最终要的,还是取决于你是谁,你的表现如何,你能提供什么价值。
话不多说,我们开始吧。因为忽略沟通能力,自己也吃过不少亏:
遇到问题不知道该请教谁,怕被别人觉着自己菜,怕麻烦别人,最后只能自己死磕。
跨部门协调时,自己的催促总是被人忽视,永远得到的是“我还有事情在忙,你先等等”。
日常只会低头写代码,甚至不知道代码为了谁而写,公司的方向、目标一概不知。
职业生涯感到困惑,想升职加薪,却又不知道如何向领导开口,到离职可能都没和领导私下说过10句话。
既然我们聊沟通,你是不是以为我要聊沟通的技巧、沟通的方式这些,当然一些方法很重要,但方式方法只能算是“术”的层面。
那些在职场中沟通顺畅,让别人愿意配合,被人信任的那些同事,仅仅靠的是方式方法吗?想要沟通更加轻松、顺畅,我觉着最终要的,还是取决于你是谁,你的表现如何,你能提供什么价值。
话不多说,我们开始吧。 不知道横向沟通时,大家会不会遇见几种场景?
和团队内同事沟通,都把方案说的很明白了,但总感觉他不懂我的设计思路。
有问题想请教同事,但却频频被婉拒,甚至被刁难
与合作团队配合,你急的像热锅上的蚂蚁,但他们不急不慢,甚至不支持,导致项目延期。
我在刚毕业作为一个职场小透明的时候,遇到工作中不会的问题是,请教同事特别小心翼翼,生怕同事拒绝我,或者嫌弃我菜。
遇到比较和善的同事还好,愿意帮助你,但是最怕的就是最怕的就是被一些同事回复:“你能不能自己再看看代码。”
虽然绝大部分程序问题都能通过看代码解决,但是我提出了问题,那一定是我真的看不明白了,不一定是看不懂代码,可能是因为不了解一些业务的背景和历史原因而已。
我特么肯定是看完了没思路才问的,被这么一回复,下次鼓起勇气再问,不知道要到什么时候了。
所以,横向沟通,其实最关键的,就是对于合作关系的同事,如何获得他们的认可与帮助。
如何获得他们的认可呢?最重要的在于你对他有多大影响力。
比如你有着更好的职级,更老的资历,更广的职场人脉,在横向沟通时都会比较顺利。
但是当你是一个职场新人,或者刚换了一个岗位、一个公司,那么该如何利用自己的影响力,去横向沟通呢?
因此,我会从职业生涯不同的阶段,结合自己的实际经历,来介绍给大家。
职场初期
程序员在工作的前几年,需要提升自己的专业能力为主。
你缺乏业务经验,缺乏技术经验,在工作的沟通中,便很容易处于较低的位置。相信你也有这种感觉,你觉着一个同事更专业、更有能力,那么他和你沟通方案、寻求支持,你一定很容易被说服。
那么你要问,那职场初期,专业能力一定还不够好,那么没有更好的办法提升自己的影响力,和同事沟通了吗?
当然不是,可以通过借势,提升自己的权威度。比如技术方案讨论,如果你对方案存疑,却不能提出更好的方案,如果你拿出比如大厂的解决方案出来,通过对比优劣,你的说服力就能够大大提升。
当然,除了业务、技术经验,提升自己的逻辑能力,也是非常重要的。在寻求帮助、获得支持的时候,有准确的数据,充分的论据,都可以提升你的观点的说服力和可信度。
职场发展期
职场发展期,相信你的技术能力、业务能力会有很大的提升,或许你已经可以独当一面,你的工作范围也不限制与团队内部,可能需要与多个职能的同事一起配合完成工作。
从影响力角度分析,这时候你需要提升在同事眼中的“信任度”为主。
什么构成了你同事眼中的信任度呢?我想从几个方面来分析
你的人品如何,对待事情是否积极、公正。 职场中你更愿意相信谁呢?一定是那些积极主动,并且对所有同事一视同仁的人。
在你的职场发展期,积极主动,是一个人能否继续进步的关键。这个阶段除了快速学习技术,对于业务的学习很容易被忽略。因为遇到技术问题,这是你的工作,你不去解决,你的工作就无法完成。
但是业务知识,你不学,没有人去管你,你只需要看着产品的PRD写代码,也不会出什么错。
但如果你只关注自己的一亩三分地,工作中遇见问题不推进,什么都等着别人催,等着别人解决,那么你的影响力就无从谈起,和同事沟通也会遇到很大阻碍。
你过去的表现如何,你这个人是否靠谱? 代码讲究鲁棒性,人其实也一样。工作中面对不同的环境、条件,都需要能保证工作产出的稳定和可靠。
比如你的代码质量是否足够高,之前上线的功能,是否稳定。
对于别人提出的问题、线上的bug,你是否能快速响应不拖沓。最怕的就是别人问你一个问题,你说等一会告诉你,然后你转头就忘了这件事情。
答应别人的事情,是否能够按时完成,而不是到dead line,才告诉别人还有问题。
职场稳定期
在职场稳定期,你既有了足够的技术专业能力,也成为了一个正直、靠谱的人,这时候我认为“互惠原则”是支撑你沟通顺畅的一个小窍门。
互惠原则是社会心理学中的一个概念,指的是人与人之间天生有回馈他人恩惠的倾向。简单来说,就是“你对我好,我忍不住要报答你”。
我想通过几个例子和大家说明我是如何因为互惠原则
有一次,合作团队负责的一个需求改造很紧急,但是因为他们技术方案没有评估到我负责团队的改动,所以没有给我们的产品提需求,因此我这边没有技术排期。
如果临时提需求,那么根据排期就要排到下一个开发周期了,他们需求自然也要延期。
他们组长找到我,我和他一起评估了一下改造的复杂性,并不复杂,于是我答应他在他们上线前我也会改造完并发版。于是自己提了一个技术需求,完成了相关改造,他们的需求也顺利上线。
还有一次,产品经理考虑不周,新上线的功能校验比较严格,因为设计问题,运营同事频繁吐槽产品,影响了他们的使用效率。
正常走需求迭代,需要等到2周后了,于是产品找到我沟通,看是否有什么临时的解决方案。 为了解决运营问题,我看了下,需要临时处理一下数据,既能保证使用,也能节约不少运营的人力成本,于是我写了几个脚本,临时处理线上数据,解决了这个问题。
在这两个场景中,我发现了他们的诉求,并且发现他们对此真的很着急,于是我尽我所能,主动的为他们提供帮助。你可能会说,你这样临时多干了很多事,太亏了。
是的,短期来看,我确实牺牲了自己一部分时间去帮助他们,但是我也收获了对他们的影响力,比如承诺的一定完成,还能帮他们摆平一些问题,慢慢的我的影响力就越来越强。在以后我需要帮助的时候,他们自然也乐意去帮助我。年度的360绩效评估,我自然能够收获他们的认可与好评,长期来看,受益的就是你自己。
向上沟通
向上沟通就是和你的上级进行沟通,即使工作好多年了,我对于和领导沟通依然觉着很头大,相信这也是你非常头疼的问题。
看看一下几个场景,你有没有中招呢?
觉着领导太忙了,我目前的工作似乎也没这么重要需要汇报,找领导也不知道说什么,等领导不忙了再说。
我做好领导交给我的事情就行了,拿结果说话。
有困难需要和领导协调,但是不知道怎么说,领导会不会觉着我能力不行?
领导交给我的任务到底是什么意思?需要做到什么程度,到底是否着急。
我认为向上沟通,最重要的一个点,就是主动大胆,跨过心里的那道坎,因为绝大部分时候,我们就是内心有一个卡点,觉着无话可说,觉着没有必要。
向上沟通如果你要想影响上级,实话实说太难了,并不适用于我们每一个人。所以说预期说向上沟通,不如说我们如何才能够利用好我们的上级,帮助自己更好的发展。
展示自己
自己作出成绩的时候,觉着无人知晓,那么和上级适当的展示自己。
展示自己,你是不是觉着,这样有点显摆的意思?其实并不是,在沟通过程中,你或许了解到,这件事是否符合当下团队的发展方向,你感觉有了成绩,是否是自嗨,有没有地方需要被纠偏?
如果真正做得好,被领导认可,那么可以极大的增加你的自信心,输出你的影响力,避免“酒香也怕巷子深”。如果发现问题,那也从上级的角度发现了可以提升的地方,对你来讲也是百利而无一害。
当然,展示自己并不是直接去和领导说,我做了xxx东西,非常厉害,用了什么什么技术,而是有一种其他方式,比如协调大家,做一次技术分享,把自己的东西展示出来。
信息同步
上级安排的工作任务,无论遇到什么问题,都自己扛。
我在工作的前几年里,一直是一个低头干活的人,自己很有计划性,即使遇到问题,我也会靠着自己的力量去死磕,我一直以为,我是一个靠谱的人,领导给我安排的工作我都能自己完成,多给领导省心。
但后来有一次和领导沟通,领导说有时候一旦周期拉长,领导对我的信心就会减弱,最关键的就是我向上的反馈不够多,像是两个月的OKR,或者半年的规划时,领导很难知道具体的进度如何,最后是否能达成,因为上级需要识别风险,提前处理。
持续的做好信息同步,领导对你的信任度才能不断加深,你才能过承担更重要的工作。
困惑解答
工作久了,一定会有职业生涯的困惑,,未来怎么发展,干的不开心,甚至想离职,都可以试着和上级聊聊。
因为我们的工作内容比较单一,所以我们对于很多事情看待的角度也会单一,和领导聊聊,可以从更高的角度看一下自己当前的阶段与状态。
向下沟通
还记得开头说的那句话吗:“真正会沟通的人,不需要能说会道、口若悬河,而是懂提问、会倾听,能洞察需求、摸透人心。”
学会听,比学会讲更重要。
学会提问
我们日常生活中的提问,往往分为2种:开放式提问和限制式提问。
比如,你询问下级:最近团队比较忙,加班比较多,当然也做出了不错的成绩,不知道你怎么看待我们最近完成的这个项目呢?
这就是开放式提问,对于最近的忙碌,可能会有很多问题,或许是产品需求不合理,也可能是工程质量不高或者大家配合不够顺畅,这就是让对方做开放问答题。
如果换一个问法:最近加班比较多,你这块的工作,是否都按期完成了呢?
这种提问方式,对方只能回答是或者否。你能获得的信息就比较少。
在沟通的时候,我们要尽量多用开放式提问,要鼓励对方自由回答,多让他们讲。这样有助于你收集资料、挖掘需求,而且,还能鼓励对方对问题做出详细说明。
试着倾听
向下沟通,大家可能都会觉得重点应该在怎么说,但是向下沟通,更重要的是倾听。为什么这么说呢,因为在向下沟通的环境中,你的职级、经验通常是要比沟通对象多出一些的,如果在没有理解对方意思的情况下,很容易陷入单向输出的情况,你哇啦哇啦说了一堆方法论、公司目标与方向,但实际上沟通起不到太好的效果。
3F倾听法是一种有效的沟通技巧,它强调在倾听过程中要关注三个核心方面:Fact(事实)、Feel(感受)和Focus(意图)。这种方法可以帮助我们更全面地理解说话者的意图和需求,从而促进更有效的沟通。
倾听事实:这一步骤要求倾听者专注于对方所陈述的客观事实,避免加入自己的主观评判。倾听者需要区分事实与观点,确保理解的是对方所描述的已发生且可考证的事情。在这个过程中,倾听者应保持开放的心态,不急于作出解释或提供建议,而是先确保对事实有准确的理解。
倾听感受:在倾听事实的同时,倾听者需要注意观察对方的情绪状态,感知对方的感受。通过观察对方的肢体动作、语言、声调、表情变化等,可以更好地理解对方的情绪,与对方共情,尝试站在对方的角度去感受和理解其情绪。
倾听意图:这一步骤要求倾听者深入了解对方话语背后的真实意图和期望,而不仅仅是表面的意思。通过提问和澄清,确保准确理解对方的意图,避免误解和沟通障碍。在理解对方意图的基础上,可以更好地回应对方的需求,促进有效的沟通。
工作七年后,我不太关注是否升职加薪了,你很优秀,别因世俗的目标限制自己
工作七年后,我不太关注是否升职加薪了,你很优秀,别因世俗的目标限制自己。
这篇文章我只想用我半年的经历告诉你一件事:探索无限可能,注重个人成长。
为什么别着眼于晋升or加薪
毕业刚到北京的前三年,面对自己在的小公司的尴尬局面,看着Boss上琳琅满目的招聘信息,我的脑海里只有四个字,跳槽涨薪。
技术,什么不会我学什么,面经写的什么我就去背什么,算法更是赶鸭子上架,哪怕先从背代码开始。
由于咱们程序员行业特殊性,在北京的时候,下班都在晚上10点左右。当然,上班时间也比较晚,十点到就可以。
刚到北京那段时间,我早上起床后,都在看一些SpringBoot的专栏,因为18、19年那会,面试要求就是这样的,只用Spring MVC落后了。
我觉着那时候和高三的那段时间特别相似,上学期间,宿舍、食堂、教室的三点一线。工作之后变成了小出租屋、办公室两点一线,连食堂这一步都给省了,订外卖嘛。
那几年的时间,我从没和非程序员的朋友们,吃过一次晚饭。
工作累的时候,我时常会去楼道里站一会放松一下,记得那时候办公室的楼道里的墙壁,是洞洞形状的,望着外面车水马龙,我第一次有一种深处困境的感觉。(这个印象让我非常深刻,直接就翻出了老照片)
就这样,我一路摸索前行,直到进入字节,因为工作范围变化,我才去接触了更多的朋友,产品、运营、策划、销售。
很多同事,虽然职责不同,但是工作产出高,既能把控方向,也能处理风险。之前我总觉着技术才是那个扶大厦于将倾的角色,慢慢发现我们才是金字塔的最底层,我看到了需求是一步步怎么从市场到运营、从运营到产品,再从产品到研发。
接触的越多,越感觉自己的见识与认知的狭窄。
后来我了解到一个词,“信息茧房”。
“信息茧房”是指人们倾向于只关注与自己兴趣相符的信息,久而久之,会限制自己的视野和认知范围。
“信息茧房”会导致个人的认知和价值观固化,失去批判性思维和多元化思考的能力。它还会加剧社会分化和对立,因为不同的信息茧房之间缺乏有效沟通和交流,容易引发群体极化和冲突。
我接触的都是程序员,我的同学也都是程序员,所以晋升、加薪、进入大厂,变成了我工作之路上唯一的目标。
慢慢的我就掉进这个陷阱了,为了升职加薪,我上班、下班都在学技术,总以为技术都学会了,自然就能升职加薪了。可最后发现,技术好像并不是最重要的那个。
目标单一是如何影响程序员的
技术
在上一篇文章里,有一个读者给我留言:最讽刺的是大部分程序员竟然觉得c端高并发高可用才叫技术。
上一篇文章里面我也讲了我对于技术的本质的四个阶段,其中三个阶段都是对于技术的追求。
这就是技术人的执念,我们想在技术上分一个高低,想去追求高并发,追求更新的技术。
但事实上,做不完的需求,写不完的CRUD才是常态,能少和产品撕一撕,保持一个良好的心情都挺难的。
回到之前文章聊到的,技术的本质是工具。当前你的产品有什么问题,技术是不是能够发挥作用,就已经产生业务价值了,技术含量绝不是由高并发、大流量来衡量的。
追求确定性
做技术久了,习惯了程序的输入与输出,习惯按照某种规律、某个流程、某个框架、某个计划去做事情,我们写的每一行代码,都是确定性的,我们不大喜欢“变化”,喜欢确定性的东西。
记得有一段时间,已经带着团队半年,却迟迟没有晋升,心里很着急。
我对着wiki上的职级能力要求表,一条条看,一条条对比,我觉着我的能力都足够了,为什么还不让我晋升。
可晋升是这样的吗,我满足了能力要求表,就能够立刻轮到我吗?
晋升是企业的一次人才选拔,选拔那些对于公司未来发展更有价值,能承担更大责任的人。
晋升需要你拿到成绩、具备能力、还要具备一定的影响力。
但还有一件最重要的,就是只有在企业不断发展,业务不断发展,团队快速扩张的时候,才会有充足的机会,提供给我们。
但你说,企业能不能高速发展,这是一件确定性的事情吗,可能老板们都不能给出一个确定性的答复。
同样的,涨薪也一样是不确定的,行业、企业发展不好的时候,拖欠工资都有可能,那如何希望能够涨薪呢?
后来我想明白了这件事之后,回想自己自己当时死磕级别要求的样子,感觉挺有意思的。
社交关系
我是山东人,人情社会从小就感受到了许多,也见识了靠社交关系真的能解决很多问题。但是我总觉着,只要靠自己的努力,哪有什么是花钱解决不了的问题,如果有,那就加钱。
后来,在宝宝出生前,很突然的去医院住院,我们先被安排到了一个三人病房。一个病床,一张小桌子,一个沙发床,就是全部空间。孩子的东西很多,我必须把行李箱打开铺在地上,才能及时拿到需要的东西,护士来的时候,我要不就需要把沙发床收起来,要不就得收起行李箱,特别狼狈。
最重要的是普通病房只能有一个陪护,我陪着老婆情况下就不能再请月嫂了。我又是个新奶爸,照顾孩子和还得照顾老婆,忙的不亦乐乎。
其实,我们早早就预约了独立病房,但是资源有限,需要的时候却住满了,无论我怎么去问,人家都说安排不了。独立病房一晚800多元,但你想花钱都花不出去。
最后家人给某个朋友打了电话,然后又联系了医院,我当晚就搬到独立病房了。
是的,医院一般预留着几间独立病房,就是为了方便一些领导临时安排。
Enmmmm,毕业几年都在北京,这几年来一人吃饱全家不饿,可是在有了孩子的第一天,我就被这个社会深深的毒打了。
无效社交确实没用,有效社交都是资源。
高薪
毕业半年,我有勇气裸辞去北京闯荡。
19年时比毕业薪资饭了两倍,给了我高位上车买房的勇气,觉着明天会更好,房贷嘛,只会越来越不值钱。
毕业五年,薪资翻5倍,但你现在让我我裸辞去闯荡,想想房贷,想想娃,反而觉着被限制住了。
环境变了,市场增速放缓,内卷又严重。在这种环境下,想跳槽,发现机会少,或者有机会也不一定能能接的住你的package。你身边有没有这样的“动弹不得”的朋友呢。
其实高薪,更多的是平台、行业红利带来的,毕竟互联网更容易形成规模。
但我们如果因为高薪,被高薪限制住了自己而畏手畏脚,舍不得放下眼前的利益,放弃更多的可能性,那我们自然会因为高薪,限制自己更长远的发展。
去探索那些不确定的东西
你可能想说,程序员不注重升职加薪,那注重什么呢?我是这么做的。
爱表达的人,先影响世界
第一点我想说的是,去找到自己喜欢或者擅长的事情,并坚持下去。
我探索的方向,是写技术博客,扩大个人影响力,做个人IP。
高中的时候买硬皮本子写,大学了买手帐写,工作了从印象笔记写,写日记、写感悟,开心了写,难过了写。
这是一件从不需要人督促我,但我缺断断续续坚持好多年的事情。
后来看了很多书,看了很多文章,有些文字真的很有力量,能让人感同身受,又能激励我去前进。
我也被一个个优秀的博主,不断的激励着,直到我自己迈出了这一步。
我在低谷中,为了缓解焦虑,报名参加了技术人写作训练营,很快里面的内容就不满足我的输出,我又买来粥左罗老师的《学会写作2.0》,读了三遍。
不知不觉间,写文章好像并不难了。一直困扰我的没人看怎么办,写的不好怎么办,写什么,怎么排版,怎么起标题,怎么写开头,怎么收尾,一点点的都被解决了。
半年前,我第一次认真的写了一篇文章,并发到掘金上。
借用明白老师文章里的一段话,来回答我为什么坚持。
当一个人能持续成长,包含了知识、思维、能力、心态、情绪、赚钱、关系、健康、感情等,并且他能把自己的成长过程,不断真实的分享出来,大家看到后,就会慢慢对他有信任感,他也就会慢慢拥有影响力。
保持真诚,保持利他,这个世界的规律是,当你在做一件帮助很多人成功的事情时,很多人会希望并帮助你成功,利他终利己。
见识更多人,试着了解可能
做技术的人,都有一个习惯,就是遇到技术难题,自己会苦苦钻研,查阅资料、阅读源码,对于技术的攻关、学习来讲,确实是对的。
但你我很容易就会把这个习惯,迁移到面对的人生其他问题上,小到买房买车,大到职业发展、人生选择,自己钻研很有可能会走很多弯路。
我在字节最累、最迷茫的时候,每次和我的mentor、leader聊完天,我都会有豁然开朗的感觉,因为他们走过你走过的路,对你的问题就是降维打击。
最近半年,在互联网上,了解、认识了好多大佬、朋友。
有做程序员副业社群的刘卡卡,看到了他一路做过来的经历,也在认识他之后,见识了他飞速成长、快速发展的一段时间。
还有已经作出成绩、完成转型的大佬托尼学长。
有和我一样在努力在公众号、掘金输出的朋友猿java、江天飞鸟、Goland猫、IT男的一人企业,每当想到有人在结伴前行,心中便不再孤单。
还有毕业三年,就靠小红书、闲鱼月变现1w+的读者朋友。
还有更多我认识他他不认识我的大佬,亦仁、芷蓝、靠谱、明白、雪梅。
我见识了太多种可能性,你可以做社群,可以做闲鱼电商、可以做面试辅导,可以做自媒体教练。你或许一个月可以通过互联网增加一万元甚至几万的收入,也可能通过互联网实现财务自由。
最重要的,我发现这些人可以自由选择喜欢的事情去做,而且做的很好。这不比只跟随市场需求走,逼迫自己做些不喜欢的事情,强太多了吗?
所以,认识更多人,学习他们的经验,同时这些人也是你的资源。在你苦恼、迷茫的时候去请教一下,聊聊天,你就能从不一样的角度看问题,甚至直接解决问题。就像你看到我,你可以认识我,有程序员方面的问题,也可以直接联系我。
保持头脑开放
赚钱的机会往往是开始于我们第一眼看不上、瞧不起的信息差。
比如说 大学期间,我曾经对微商嗤之以鼻。卖假货、朋友圈刷屏,太low了! 几年之后,当年做微商的,做得好的赚到第一桶金,做得不好,也积累了项目经验、私域用户。
工作后,我觉着那些整理面经的,没什么意思,不就是罗列了知识,照着书本上的内容,那可差的太远了,有这时间我看看书不好吗?
但整理面经的,在技术平台持续输出的那些人,不但积累了第一波粉丝,在那个快速发展的时间,很多人靠公众号赚到了第一桶金。
现在我开始接受一些知识付费,加入了一些社群,我让自己沉浸在一个有着各类机会的环境里,我尝试去看那些曾经我嗤之以鼻的小项目。
只有保持头脑极度开放,才能让各种信息流入。特别是对于一个想赚钱的人,开放的头脑意味着我们允许赚钱机会向我们靠近。
我之前一直不是一个头脑开放的人,所以现在我可能没有太好的经验和大家分享,但今年我一定会有所尝试,通过加入的社群去开阔眼界,也会把过程、收获分享给大家。
相信时间的力量
最后一点我想说,很多事情要慢慢来。
你不必因为别人的成绩而感到焦虑,也不要用当下进展的快慢,去定义以后是否能到达远方。
更不要忽视时间带来的力量,所有的积累都会在未来某一时刻回报给你。
说在最后
好了,文章到这里就要结束啦,很感谢你能看到最后。
当然,每个人的阶段不同,如果你工作5年内,还是把更多的精力放在晋升、加薪,因为你的空间还很大,未来一定不可限量,但不要让他成为你唯一的目标。
但工作5年以后,当职业生涯遇到瓶颈,你的人生还很长,不妨试着去探索更多的可能。
工作6年的程序员,如何挖掘内心,找到自己想要的东西
前言
Hi,大家好,我是DY拿铁,一名95后奶爸程序员。 2023年,如果用一个词来形容,那一定是迷茫。今天想和大家聊聊,程序员如何在自己的职业生涯中去寻求破局,自己的一些思考。
为什么会思考这些
2022年,为了迎接我的孩子,照顾家庭,从大厂辞职回到济南,进入到了一家传统行业的信息公司。薪资、福利都有了不少的下降。但更让我焦虑的是,职业生涯的发展也明显有了很大的限制,当了爸爸之后,心态、生活上也发生了很大的变化,为了给家庭、给孩子更好的未来,在大环境下寻求突破,是我想迫切解决的问题。
我的经历
今年已经是我工作的第6个年头,从一名懵懂的大学毕业生,成长为了现在的职场打工仔。6年间,我从济南到北京,再从北京回到济南。呆过传统行业,去过互联网行业。从小公司,一步步跳槽到大公司。中间的经历,虽算不上精彩,但也可以说的上丰富。
我过去的成长路径,是一步一个脚印,认真学习八股文、算法、架构。拿到曾经期望的薪资,进入梦寐以求的大厂。我也很感激过去的自己。让自己能够在家乡买房,让我结婚生子,成家立业。
落差
随着经济下行,互联网企业裁员不断,程序员行业日渐趋于饱和,各行各业的日子都不好过。
互联网企业,想要向上发展,一个是技术方向,一个是业务方向。
技术方向,我是做后端的,其实大厂的后端无非就是拧螺丝,技术架构扎实,相关组件丰富。更多的还是去做工程方面,技术方面向上突破是很艰难的,几乎看不到更多的成长路径。
做业务的话,其实就是在一定阶段,转向偏管理方向,带着一个小团队或者大团队,去拿到业务结果。需要不断去努力、去拼、去卷,才能有一些机会去做好的方向,才有几户去拿到结果。
而传统企业更多的还是人情社会,你的能力不再是领导关注的最主要的因素,即使你能力强,但在领导眼中可能比不过那些在公司干了5年、10年的老员工,传统企业,稳定、忠诚很重要,所以技术的天花板很低,只能走业务方向,转向管理。
思考
迷茫之下,无意间通过直播,了解到了三叶草模型。“三叶草”模型是什么
每个人都希望自己的工作状态是理想的,要想达到这个目标,就得想清楚当我们在谈论工作的时候我们在谈论什么。
工作的本质是,通过价值创造完成价值兑现。我们能够进行价值创造的前提是对所从事的工作内容有兴趣,兴趣加上持续的投入,让我们具备完成工作所需要的能力。通过能力创造价值,我们可以获得物质回报和精神回报,这些东西让我们感受到价值感和满足感,从而有更强的兴趣投入到工作中,这样形成一个闭环。
所以完美的工作应该包含兴趣、能力、价值三个方面。
我们感兴趣的;
我们有能力胜任的;
能够回馈给我们价值的,与我们当下所追求的价值观相符的。
当以上三个方面都获得满足时,我们体验到的是快乐、对工作有热情、有成就感和掌控感、觉得工作有意义、有价值。相反,如果当某一方面得不到满足时,我们会产生负面的体验和情绪。
三叶草模型,可以通过我们在工作中表现出的情绪状态,来帮助我们进行自我觉察,或者帮助别人判断当下职业发展的状态是什么,哪里存在问题,应该从何处着手解决问题,促进发展。
反思
通过三叶草模型发现,自己逐渐出现了兴趣缺失的问题,长时间在后端开发岗位,早早度过了起步适应阶段,加上从北京回到济南,工作难度大幅降低,因此催生了较大的厌倦情绪。
我也渐渐发现,过去一步一个脚印的思维,已经不在适用了。那时的我在技术领域是一个小白,有着数不清的技术要去学习与了解,有着大公司等着我去尝试,所以我可以有清晰的目标,也能够拿到及时的反馈。但现在,纯粹的开发,几乎很少再会遇到能力问题了,重复的工作,也不会再有正反馈。
年龄持续增长,天花板似乎就在眼前,难道作为程序员,我们就真的没有第三种方向让我们去选择了吗?
寻求破局
经过这一段时间的思考,摆在我眼前的有几条路
1. 持续深挖Java技术路线,卷职场,积攒年限,发展管理方向
优势:熟悉的领域,熟悉的方向,多年的积累,技术方面没有问题,但需要持续学习管理知识
劣势:依赖公司发展与人际关系,且这个道路比较卷,毕竟是僧多粥少,成为架构师,当上CTO,也是大家美好的想法
2. 更换技术方向,研究AI,顺应时代趋势
优势:技术风口,顺应时代趋势,AI领域今年只不过是刚刚起步,后续发展上限高,技术领域更新换代很快,AI很有可能会持续发展并释放出更多的生产力
劣势:0基础,不确定自己能够达到的上限在哪里
3. 拓宽赚钱思维,寻求副业可能,做一些除了开发的小生意
优势:打开思路,扩大眼界, 越来越意识到,如果只把自己限制在程序员领域,往后的发展会非常受限,即使有风口,自己也赶不上
劣势:可能要花比较多的时间,去试错。对主业有一定影响
上述几个方向,在去实践中,会有非常大的不同,作为普通人,我真的很难去选择,每一条路都会有焦虑,也都有机会,有的更稳妥,有的更激进,结果如何,我们完全无法去预知。
但无论哪个方向,想要发展好,都有一个可以去做的点,那就是持续写作,持续分享,打造个人IP,增加影响力。我个人其实是一个很喜欢写点东西的人,大学期间买过一本手帐,里面断断续续记录了自己几年来的一些看法与日记。在自己的印象笔记中,也写过不少自己的心得。但毕业这些年来,我所记录的许多东西,却没有记录在互联网的任何平台上。写作的好处有很多,比如沉淀自己的知识、经历,比如能够通过输出,倒逼自己输入等等,我也是慢慢才发现,原来写作的好处有很多。大家或许都或多或少的了解过技术方面的几个知名博主,Guide、三太子这些,他们正是把各种知识记录、整理了下来,在网上收获了粉丝,也增大了自己的个人影响力。
当然这件事情说起来容易,做起来却很难,就像我正在写的这篇文章,我几乎用了两天的时间去写作,去打磨,总是感觉不能很好的表达我自己的想法。是的,写作是一件需要坚持、刻意练习的一件事情。标题、文章结构、文章内容、文章配图、是否通顺,每一个点都有很多需要思考和学习的地方。
写在最后
说了很多,把我最近一段时间的疑惑与思考,终于算是勉强的表达出来了。之所以有这篇文章,也是在这个浮躁的社会中,让自己冷静下来,好好想想自己该做些什么,而不是被纷繁的互联网所影响,眼红那些大V,羡慕别人的生活,别人的路未必适合自己。找到自己喜欢的与想去做的,并坚持去做,走出属于自己独特的道路。 如果大家有更好的想法与意见,欢迎在评论区指出与交流。
一个NB程序员的5大定律
定律一:晕轮效应
又称光环效应,是一种认知偏差,指的是我们对他人的总体印象会影响我们对其特定特征的评价。
简单来说,我们倾向于根据有限的信息构建一个整体的印象,并据此对他人或事物做出全面的判断。
在晕轮效应的影响下,一旦一个人或事物的优点或缺点被放大,其他方面就会变得不那么显眼。
举个例子,我们通常认为长得好看的人也更聪明、更友好、更值得信赖;或者我们可能会因为喜欢某个明星而认为他们代言的产品更好。
如果要从程序员身上来举例子,那么如果遇到一个头发稀疏的程序员,你可能会认为他的技术能力很强,为人也一定很可靠!
话说回来,程序员可以利用晕轮效应
1️⃣打造自己的光晕
成为专家或看起来像专家,可以提高你的话语权。例如,在技术社区发表文章,当你拥有众多粉丝和高阅读量时,即使你不发言,别人也会认为你很有影响力。
2️⃣突破别人的光环
使用开源项目时,我们可能会被其表面的光环所迷惑,认为它们完美无缺。但事实上,即使是成熟的项目也可能存在缺陷,复杂的代码也是由基础语句构成的。
定律二:眼不见为净定律
看不见的,就是干净的。
"眼不见为净"是一种常见的回避性应对机制,指的是人们倾向于逃避或忽视那些让自己感到不愉快、烦恼或痛苦的人事物,以此来维持心理上的舒适感。
看到这个定律,我的第一反应就是,屎山代码为什么会存在?
还不是因为管理人员看不到这坨屎山,他看到的是一个功能正常运行的系统,所以人家并不觉得这是屎山,而是美丽的风景线!
只有我们这些天天在这座屎山上添砖加瓦的程序员才能会感受到这种绝望!
所以面对屎山代码,不要抱怨,最好的方法就是找个机会把这座屎山丢给其他人,毕竟眼不见为净嘛!
当它不在你手上的时候,你会发现其实它也挺好的,毕竟眼不见为净嘛!如果找不到接手的人(bushi),还是老老实实排查吧......
定律三:虚假同感偏差
虚假同感偏差 是一种认知偏差,指的是人们倾向于高估自己观点、信念、行为和习惯的普遍性。
简单来说,我们常常认为,我们的想法和做法是理所当然的,其他人也应该和我们想的一样、做的一样。但实际上,每个人的经历、背景和价值观都不同,我们的想法和做法并不一定具有代表性。
你们在学习或工作中有没有遇到过这种情况,你催促某人完成一件对你来说很重要的事情,但对方迟迟不付诸行动!
这就是因为虚假同感偏差。我们可能会错误地认为。如果这件事对我很重要,那么别人也会认为这件事很重要,然而并非如此。
如果要让别人重视你认为重要的事情,可以让他们意识到这件事的重要性,比如提醒他们某位领导正在关注。
此外,当我们对自己的观点非常自信时,也容易产生虚假同感偏差。
比如我们自信满满地写完一段代码并且自测之后,提交给测试人员进行测试,当测试人员跟你反馈存在某BUG,我相信第一时间反应大多都是:我不信!!!
然后就有以下对话: 你:可能前端有缓存,你刷新一下再试试?
测试:行,我试一下。
过了十分钟......
测试:还是一样的问题啊,你看一下。
你:是不是测试数据有问题啊,我自己都测试过了,不应该有问题!
测试:行吧,我再看看。
过了十分钟......
测试:数据都排查过了,是正常的,你检查一下吧!
你:(还想再挣扎一下)你怎么操作的?
测试:就点击一下这个按钮,我还能玩出什么花吗?
排查了一会,哦~居然是空值的情况没有判断,我还能再白痴一点吗!
你:问题已经修复了,是某某复杂的场景我没考虑清楚,你再测试一下!
定律四:皮尔斯定理
意识到无知,才是知道的开始。
还有一句话,我觉得很适合接在这句话后面:知道的越多,才发现自己不懂的越多!
皮尔斯定律是命题逻辑中一个经典的定理,它陈述了如下的逻辑等价关系:((p→q)∧(q→r))→(p→r)
随着知识的增加,我们会发现还有更多我们不知道的东西。这形成了一个循环:意识到无知→开始学习→知识增加→意识到无知。
不知道你们是从什么时候开始意识到自己的无知呢?
曾经,我还是小白的时候,在福州某公司上班,每天做的事情就是SpringBoot接口的开发,或者修改某些业务逻辑,我以为这差不多就是开发的全部了。
那时候对接的前端是使用Vue写的,我甚至不知道什么是Vue,只知道是某个挺流行的前端技术。
每次部署,我看前端文件里就只有一个index.html文件,我真的非常奇怪,为什么这么大的项目,只有一个html文件?
那时候我对前端认知还停留在html+js+css+jquery的时代,所以完全想不通。
本来还觉得自己前端也是有点基础的,直到接触Vue,我才惊呼,卧槽,前端怎么变成这样子了?什么nodejs,什么npm完全没听说过。
用过一段时间之后,我更是惊呼,卧槽,前端还能这样子?明明我HTML+CSS+JS只懂一点,都能做出这么好看的页面了。
有了各种开源前端组件,即使对原生HTML标签和CSS不太懂,也能算是个还不错的前端开发了。
还有这ES6语法用起来也太爽了吧,比JAVA可自由太多了。
无论怎么说,一定要虚心学习,逐渐深入研究底层原理,并尝试引用涉及模式优化代码,在意识到无知与知识增加的循环中成为更优秀的开发者!
定律五:补偿定律
弱点也是一种力量源!
大家应该都听说过这个现象:瞎子的眼睛虽然看不见了,听力通常会变得非常灵敏!
这种生理上的现象吸引了很多有兴趣的心理学家,所谓补偿,就是发挥一个人的最大优势,激发其自信心,抵消其弱点。
看到补偿机制,我第一想到的就是各行各业总有一些“专科”大佬。
前端开发,你的认知不能仅局限于技术内,需要发散思维了解技术圈的前沿知识。细心的人会发现,开发内部工具的过程中,大量的页面、场景、组件等在不断重复,这种重复造轮子的工作,浪费工程师的大量时间。