2019,不知不觉已经给上海某厂搬砖一年多了。打开牛客讨论区,看着你们从投简历、跑面试、刷面经、选Offer……两年,回到更加热闹的讨论区也丝绝不感到陌生。 2018年入职某厂后,回牛客只发过几回内推帖,也推了很多同窗🤣。此次回来想给即将成为社畜走向人生巅峰的你们写点东西,无奈腹中无诗书,不知从何下笔,只得拼凑一些文字,碎碎道来。java
本人2018年本科毕业入职上海某厂从事基础架构已逾一年,前后负责公司中间件与治理系统的开发。因为是在基础研发部门,平常的工做与通常业务部门有些出入,本文主要给你们分享一下。若是有对基础研发感兴趣的同窗能够私聊我哈~程序员
在学校的开发真的很为所欲为,想用啥用啥。面试
但企业里通常都有严格的规范,做为一颗螺丝钉,咱们只能选择融入。docker
好比我作SDK开发时,为了考虑兼容性,必须使用JDK7开发(大学时就用8了没想到这辈子还有机会用7。。。)。之前喜欢用开源组件换着用,如今企业开发通常有统一组件,好比消息必须用Kafaka,配置中心必须用zookeeper等。甚至对于变量的命名,都要与团队保持一致。编程
大厂通常还会有一大堆自研组件,好比阿里的sofa,美团的cat,这些组件可能在外面彻底没有机会接触,都须要慢慢上手。甚至不少时候以为本身比新员工的惟一优点就是,更熟练地使用公司系统🤣。 技术包袱微信
承接上一个问题,大厂通常不太喜欢直接用开源组件,由于他们用不了。在学校作项目的时候,通常选最流行的架构,Kubernetes 配套搞起来。在公司呢,发现连docker都用不起来😅(公司当时还在用vm) 。 大厂的架构通常成型不少年了,开源界不少新东西新概念不必定能兼容老架构老系统,再加上一堆自研组件的存在,大厂身上的包袱愈来愈重。并且不一样于学校的小项目,这些包袱清理起来涉及到不少部门的利益(不少组件按开源架构作就被取代掉了),甚至不是领导一两句话就能解决的问题。网络
成为一个社畜不是一个渐进的过程,从签合同的那一刻起就已经把本身卖了。刚毕业那会儿,某日早上醒来很是很是想睡回去,很是很是不想工做的那种。可是不行😫,想到不上班就要扣钱,就会乖乖爬起来去上班。一周5天工做日,不带休息,项目比较累的时候确实会喘不过气,可是没有办法,签了合同就只能好好工做。架构
假期真的不多很珍贵,工做以后没有寒假暑假,过年甚至只有一周假(超级不适应!!),因此每一个周末都十分珍贵。框架
在学校的时候能够学累了摸鱼休息一下子,在公司就真的不行。感受领导和同事随时盯着你(然而并无),看着旁边专心敲键盘的同事,很是很差意思开小差。这种节奏很累,但就是社畜的责任吧,毕竟拿钱办事。tcp
互联网大多要加班,不加班的同窗真的很幸福。8点之后才下班的人,基本丧失了白天的活动能力,由于下班时间比较晚不少事都作不了,晚餐跟朋友聚一聚,回家打几把dota,都成了奢望。特别有时候加班到10点,通常通勤到家差很少11点了🤣,基本就洗洗睡了。熬夜?不存在的,次日还要上班呢!
在此墙裂建议你们租在公司旁边,减小通勤成本。我刚毕业的时候下班须要坐地铁,回家大概须要45分钟,加了一天班拖着疲惫的身子挤地铁真的身心俱疲。
可能有的人比较崇尚奋斗,为公司奉献,相信努力必定有回报,但我以为社畜和公司就是简单的雇佣关系,不必搞太复杂。同届进来一个同窗在业务那边每天加班到深夜,结果18年寒冬试用期前一周被公司优化掉了,下午收到通知,次日直接走人,资本就是这么无情。
上学的时候真的很喜欢编程,常常研究各类新技术、新特性。曾经破解过校园网、搭过博客(如今还在写咕咕咕🤣)、写过爬虫,满腔技术热情。但工做跟兴趣真的是两回事儿,工做后基本就缩在项目的技术圈子里,没有接触其它技术的机会,可能很快就会失去新鲜感。下班到家,敲了一天键盘的我看到代码就想吐,已经无力再捣鼓本身感兴趣的东西了。 而支撑这种工做的动力很是简单而粗暴——钱。互联网确实是高薪行业,但程序员真的有钱也没时间花。之前认为年轻能够为钱多吃点苦,如今想一想多那点钱换本身自由时间不必定值得,由于多的钱也没时间花。
薪资方面,互联网行业是真的会倒挂!并且很是严重,可能明年新员工入职的时候个人薪水才涨到跟他们差很少的程度(是真的)。
作开发的长时间面对电脑,眼镜真的挺难受的。久坐+没时间锻炼很容易发福!键盘敲多了手指真的会酸,办公室待久了皮肤容易出油长痘痘,外卖吃多了养分不好,你们必定要注意身体。
在基础研发的工做主要是跟各类架构、中间件打交道,好比 Kubernetes、注册中心等,可能不少同窗在学校中就据说过或者用过它们来开发,但估计不多人直接参与过这些组件的开发。
我刚进公司就参与到公司的RPC框架开发中,在此以前我对RPC的了解仅仅局限于使用。是的,好用就完事儿了,好的基础组件就是能对用户屏蔽技术细节,但开发人员则不一样。RPC的开发须要对网络、序列化有深刻的了解,我不得不翻出大学时的计算机网络,再去看tcp协议,三握四挥,捡起这些业务开发中“不经常使用”的知识。
因此作基础组件开发所得到的技术成长是毋庸置疑的,在这里你永远不用担忧成为 CRUD boy。但相比之下缺乏业务接触,容易绑死在技术这条路上。
一个业务的bug,可能会影响一个业务功能;一个基础组件的bug,可能会影响公司的全部业务。但凡基础组件出了事故,都是灾难性的。基础组件的开发就是在针尖上跳舞(因此基础组件删库也是最容易的),因此谨小慎微也不为过。
作基础研发还容易被业务的同窗甩锅(逃),在出现性能问题老是会先想到咱们😂,因此基础组件的日志、埋点都很是详细,就是为了确保每个问题都能定位,防止用户甩锅。
基础组件很容易被拿来比较,好比RPC框架有不少,作得很差用户就会喷,还不如直接用开源的xxx呢🤣。因此作基础组件是一直被用户鞭策着前进的,由于你的用户就是公司的同事,那天伺候很差说不定就找到你工位来了hhh
甚至新组件开发完后,业务同事不必定愿意用🤣,还得像推销同样处处宣传,拉客户,毕竟没人用的组件没有绩效的。
基础组件通常没有作不完的需求,甚至常常愁需求🤣,这跟业务开发差异很大,因此咱们可能相对地轻松一些些(年终奖可能也少一些)。
这应该是问得最多的……实在无法一两句话讲清楚,二者只是各有千秋,并没有孰优孰劣。咱们部门的对外资料有一句话很是形象,“基础架构就是公司的水和电”,咱们提供最底层的资源支持业务开发。基础架构面向的大可能是公司的开发同事,因此在研发流程、质量要求、业务价值上都有别于通常的业务开发。
不过这都是理论上的理想状况,实际各厂的对基础架构和业务的划分五花八门。不少厂发展时期人力紧张、业务繁忙,没有专门划分基础架构,不少架构都使用开源组件,简单设计,这通常与业务开发是同步进行的。只有现有的架构不足以支撑日益增加的业务需求时,才会抽调人力搞基础架构。因此不少中小厂的基础架构部门很是简单,甚至没有基础架构部门,你们就没必要纠结啦。还有某T厂由于历史缘由,各事业群泾渭分明,都发展了本身的基础架构,这样的结构致使了T厂内部架构一直很混乱,也是从今年开始号称要着手统一各事业群内的基础架构(听说)。
另外,是否是业务部门就不能作基础架构开发呢?固然不是啦,业务同窗奋战在一线,每每更能发现开发中的痛点,我厂就不乏许多诞生于业务部门,后期再交接到架构部门的架构组件。此外,上文讨论的都是比较泛用的基础组件,某些业务(如金融业务)须要业务特定的一些基础组件,他们也会组织业务线内的“业务基础架构部”。
真的很贵,仅次于北京吧大概。通常都是合租,合租小次卧2k~3k,主卧2.6k~3.5k这样(体感)。一居室比较贵,通常3.5k+。
来租房最简单是找中介,链家、自如等房源不少。想要找性价比高的能够到豆瓣上找找我的转租的房子,比较随缘。 了
连接:https://www.nowcoder.com/discuss/332659?type=0&order=4&pos=7&page=2
本文首发于微信公众号:程序员乔戈里
若是是头条用户,能够在个人头条号程序员乔戈里后台回复 资源获取价值59998元的编程和考研资料 以为文章不错的欢迎关注个人WX公众号:程序员乔戈里
我是BAT大厂后台开发工程师,,专一分享技术干货/编程资源/求职面试/成长感悟等,关注送5000G编程资源和本身整理的一份帮助很多人拿下java的offer的面经附答案,免费下载CSDN资源。
本文由博客一文多发平台 OpenWrite 发布!