作者:valkyrja
链接:juejin.cn/post/7299853894733168681
我在国内大厂担任数年的开发工作,但是回顾我的职业生涯,我认为还是充满遗憾和失望的,中间做过几次错误的选择。在此,刚好借助这个文章,我想回顾下之这数年的职业生涯,点出失败的教训,描述下在我认为的互联网公司能安全度日,谋求晋升的要点以及说点大实话,希望能给各位读者学习的地方。想法很跳跃,大家根据章节观看。如果你有不认可的地方,都是你对,是我太失败。
顺便吆喝一句,技术大厂,前后端测试捞人。感兴趣一起共事
观点
要对大厂祛魅
我一定要第一个提这个点。
起因是最近在很多技术群看到大家都对大厂开发的身份非常崇拜,觉得大厂的人一定比小厂中厂优秀,大厂的人说话一定是对的云云,大厂的技术一定更好,而且在国内论坛上和学生辩论过大厂的观念,让我这个前员工深受震撼。所以一定要找机会聊一下这个话题,可能会伤害朋友们的感情,但是还是想聊一下。
1.大厂人是不是一定非常优秀
不是,国内大厂在黄金时期大部分是冗余性招人,以应对每年的绩效考核和未来可能的业务拓展,一个管理一定要懂怎么要新财年的hc,这样才能保住完成手下大部分的开发任务。
大厂面试的默认逻辑会导致大量学校好、学历好、掌握面试技巧的人进入大厂,这也是为什么很多知识星球,面试指南,面经,小册盛行的原因。
2.剖析大厂开发
在我们了解了这个前提下,解析下大厂开发,其实也符合二八原则,大厂20%左右的员工是真的有经验有天赋的超能力者,他们去实现架构,完成整个开发流程套件、开发系统的开发。而大量的员工实际上是在其他大佬规划好的线路上填api糊业务罢了,完成基础职务,之后再开发各种okr项目来满足绩效的要求。从技术的角度来看,大部分大厂开发实际平均水平也没有那么高,也是业务仔罢了。
3.大厂真正优秀的是什么
大厂真正优秀的是有一些内部架构大佬完成一套完善的开发套件以及设置开发流程,让每个参与大厂的开发都有相对不难受的开发体验以及完整的上线监控流程。让不同水平的开发都足以完成他们被要求完成的任务。
大厂优秀的是有远超中小厂的业务体量、薪资福利。
大厂优秀的是身边同事基本都很优秀,都有自己能学习的点,也是未来的社交圈子。
大厂优秀的是能让你熟悉一整套成熟的开发流程,需求评审-开发评审-业务开发-发布提测-正式上线-日志监控-热修回滚。让你了解一整个应用的开发方式。
大厂优秀的是能给你简历加分,带来未来可能的发展机会。
大厂优秀的还有像ata、学城这种前人留下的各种资料可供学习,虽然很多水文但是也远比简中外面的文章靠谱。
大厂优秀的是有更多owner项目的机会,让你能有机会发挥自己的能力大展拳脚。
身为大厂人,应该清楚现在的成就是自己的能力还是平台给的机会,戒骄戒躁。
身为非大厂人,也不要太神话大厂,其实屎山一样很多,大家还是理性讨论。
说句政治不正确的,很多大厂的成功除了依托本身人才和领导层的慧眼以外,更多还是依托时代背景,时势造英雄。 为什么目前环境小厂发育艰难,因为一旦你业务达到一定水平足以引起大厂注意以后,大部分大厂都会提出收购,如果你统一收购就会并入大厂之中。如果你不同意收购,他们会利用自己的雄厚财力定点爆破你的员工,抄袭你的创意,诋毁你的业务,抢走你的客户。当前创业不仅要选对市场,还要顶得住大厂的摧残。
高考很重要,学历很重要,专业很重要
虽然可能看到文章的人大多数已经就业或者在大学学习,但是我还是想提这个点。
诚然,互联网开发已经算是不看学历,不看出身的几个职业之一,但是在相同水平的一群求职者中,面试官还是更愿意招自己的校友、学历好看的人、专业对口的人。这个也算是一个潜规则,从好学校毕业中得到一个好员工的概率确实比从一般的学校中挑到前几名的概率大。虽然我们说宁做宁做鸡头不做凤尾,但是现实生活往往是凤尾的平均境遇比鸡头被伯乐适中的概率高,不要去赌自己能被人发掘,要尽量凑到高水平人群中,往往被人选择的机会更大。
选择高校的排名大概就是综合排名>行业内专业知名度>高校所在城市(影响你的实习选择)。
要承认和接受互联网里的圈子
首先叠个甲,这块并不是说圈子一定是好事,但是目前的环境圈子确实能在职业发展中帮助你迅速提高,这个圈子包括老乡圈、学校圈、公司圈(比如bidu帮、ali帮)、技术圈、老同事圈(etc.),大家在一个陌生环境中还是会倾向去找自己有关系的人,结成圈子,铁打一块,在一个圈子里,对你面试过关,绩效提高,晋升都有帮助。
互联网也需要情商,也有嫡系
很多人包括我之前对程序员的理解也是不用跟人打交道,只需要在电脑上完成开发任务即可,但是实际的工作生涯中,因为你的绩效是人评,你的晋升是人评。不可避免还是要多跟人打交道。跟+1(组长)的关系,跟+2(部门老板)的关系或多或少还是对你的结果有一些影响,我并不是说让大家去舔,但是起码要有一些眼力见,做该做的事情。
聊完了前面几个很油的话题之后,我们回归到实际开发生活中
尽量选择大厂,注意识别子公司和外包
虽然我们之前想让大家对大厂祛魅,但是目前来看进入大厂还是能带来更多的收入和晋升机会以及未来的跳槽机会,而且你未来的同事圈层也会更为优秀,要知道这些人就是你未来的内推池,在互联网,互帮互助永远比单打独斗更好。在同等情况下,我们肯定推荐大厂offer>小厂offer,核心offer>边缘bu offer。大厂的卷虽然不一定能一定让你收益,但是很多小厂卷都卷不出收益,从roi来看,核心部门是我们的就职首选。
领导的意义远大于你的想象
一定要珍惜一个好的领导 在相同水平的公司选择下,重要性上我认为有资源的部门>领导nice程度>>>>>>其他因素。
有潜力/大老板亲自抓的业务能带来更多的晋升机会,而且窗口期进入也很容易,一旦做大了容易成为骨干,后续owner项目机会大(前提不被后续老板亲信空降摘桃子)。 不好但是有资源的部门也能分一杯羹。 但是领导作为你天天见面的人,对你的影响比任何都大,一个理想中的领导不一定技术非常牛逼,但是一定是懂得对外抢肉抢功劳,对内帮助内部成员成长,懂得规划成员的晋升路径,及时跟进组员问题,适当提携帮助的人。由此可以看出来,跟着一个好的领导,不仅有利于工作情绪,也会让你一路顺利的走上晋升之路。
相反,遇见一个不合适的领导,不仅经常pua,不下班,还经常让你背c,没有晋升机会,不如趁早活水骑驴找马。离职原因无非钱给少了,心受委屈了,坏领导能让你同时体会两种感受。
学会和领导汇报工作
新人经常做错的一个事情就是闷头干活,不会汇报,不会报功。要知道领导不可能了解每个人的进度和开发内容,每周的周报是唯一的汇报途径。如果你所做的内容不被领导知道,那么又怎么表现你的价值呢?所以,要学会跟领导汇报进度,可以是每次做完一个阶段后发一个简略的阶段报告,亦或是遇到问题时及时和老板沟通目前的困难以及可能能解决的方法。让老板充分了解你的工作,才能帮你去谋求进一步向+2的汇报,不要做一个只会闷头干活的老黄牛。
学会跟领导提出想法
承接上个话题,举一个例子。如果我们想晋升涨薪,完全可以oneone的时候跟老板提出想法:老板你看我如果想晋升/涨薪,我应该去做哪些内容/完成哪些目标呢。从领导的回答也可以看得出他对你的态度
- 如果他认真回答,给你列好路径,那么说明晋升/涨薪还是很有希望的,这也是身为领导应该去做的事——规划自己小弟晋升,那么就按着他的路子付出努力实现
- 如果他给你画饼,打哈哈。说明你不是嫡系,可能需要在多做一些事情引起他的注意。
- 如果他完全无视这个话题,说明他完全没考虑你的晋升情况,那么这个时候就该考虑后路了
要学会onoene找老板沟通,不仅是让老板知道你最近的情况,也是了解老板对你的态度的时候,要学会双向沟通。
不要过多的嫌弃分配的业务
大部分大厂的业务并没有太高的技术含量,尤其像业务部门的活动业务和基建部门的客服业务,我们要清楚的认识到工作就是给自己赚窝囊费的,只要钱给足,业务什么样都是可以接受的。但是在完成日常业务的时候,我们可以考虑如何优化自己手里的活,怎么让自己手里的活效果更好,这方面的助力是有助于老板看到你的亮点,理解到你的能力的。而不是经常抱怨任务烂,不想做。
学会与人为善,维护自己的朋友圈
要知道,你身边的朋友大多技术不弱于你,未来这些人都是你可能的内推对象和被内推对象,要学会与人为善,尽量不要和同事闹冲突,最好之后也经常保持联系,万一之后有内推的机会这些都是潜在的大腿,要知道无论是国内还是国外,招人的第一选择永远是内推,维护好自己的朋友圈,早晚会得到助力。
多贴近业务,了解业务流程
不要只会做一个执行者,在日常的业务开发中要尽量的去学习业务的流程,了解整个bu的运转方法,盈利方法,这样在需求会上你也能提出自己的意见。多和产品和运营聊天,了解业务数据。这样你也能对bu下一步是进一步发展还是收缩有一定预期,提前规划下一步自己的努力方向。
要学会投巧的发展
首先感谢群友大编制的提出。人不可能是全能的,一定要有一定的不可替代性和独特性,如何在一个团队中脱颖而出,除了本身真的足够优秀以外,还可以投巧的发展,举个例子,在一个前端业务团队,普遍大家都会脚手架配置和组件化,拥有这些技能不稀奇,但是如果A会可视化开发,B会nodejs,那么这两个同学在这个团队中就容易显得更亮眼,如果大家的业务都是糊业务,这两个同学在所学技能上稍微多点优化就容易获得更好的绩效。
要有技术追求,但不要太沉迷在公司成长
虽然现在大家也基本上认识到成长不能靠公司了,大部分公司的日常业务开发技术含量并没有那么高,不要妄想在日常日复一日的业务中提高自己的技术水平,那只能提高你糊业务的熟练度和经验。如果想追求技术的提高,还是要靠工作之余的okr项目或者是自己的私下的学习。但是,想在目前国内这个环境中稳定成长厚积薄发,还是不能放弃技术追求,技术经验在身,就算面对裁员风险也不慌。我们要卷,要以提高技术、增加晋升机会,有目的的卷,无效的卷不仅带不来收益,还能带来同事的鄙夷和icu的风险。
承认天赋的差距,在团队中不掉队
程序开发确实是一个天赋的职业,要承认天赋和能力的差距,达到日常业务线上0bug、0delay的60分目标不难,但是想更进一步确实需要正确的方向和努力,我们做不到比所有人都优秀,只需要做到在团队中不掉队,不是最差的几个,就能尽可能的保证在裁员大潮幸存。
在开发之余,考虑自己的长处
目前国内环境比较恶劣,35的达摩克利斯之剑悬在每个人头上,一方面大厂hc在缩小,创新项目在关停,就算你再自信,一但没有hc,也没有换岗位的机会。另一方面随着年龄的增长,初级中级开发的大门也随之关闭,一但你在某个年龄段没有达到对应的职级,就容易被视作失败。而跳槽更要看目标公司有没有对应职级的坑位,职级越高坑位越少。目前高龄开发的环境还是比较恶劣的。
在这之上,我们要考虑是否找到另一个赛道,发挥自己的长处。能有效延缓焦虑,降低未来的风险
总结
说了这么多,也是我目前的一些浅薄经验纸上谈兵,至少从我的职业经验来看,并没有做到以上的内容,还是一个owner项目的大头兵,写了这些内容,也是希望新人不撞我的南墙,老人提前规划后路。欢迎大家多多交流,让国内有一个更好的程序员成长环境。
永远不要忘了,家人爱人和朋友是你永远的后盾,在你坚持不住,想投降的时候,记得你永远有一个避风港存在,一个成功的人永远离不开背后默默支持的人,工作只是我们生活中的一小方面,善待朋友,珍爱亲人,才是我们一直要做的事情。不要因为工作伤害爱你的人。