本科毕业半年裸辞,疫情期间准备和面经

本科19年沪二流985科班毕业。个人定的方向非常奇葩,语言几乎只会C,C++基本不会,没有刷题,没有竞赛履历。本科毕业时工作就很难找,大四年底还是0offer的状态,慌忙中签下了251的校招14b。经历几次内部分配最后被划到一个非常有前途的部门。半年后出于自己的原因裸辞,跑去另一个城市租房一个人生活。出于职业操守对于上一家很多话不该说,但总结一下就是自己的个人原因,上一家真的对我非常好,各方面的,要说可能最有存在感的因素恐怕就是工作量的特点,尽管咨询了互联网公司的同学表示这工作量小的可怜…

刚进入24岁经历人生的第一次裸辞,辞前一时爽,辞后火葬场,经济上弹尽粮绝的时候才意识到自己犯了多大的错误,特别是上一家是业内有名的待遇丰厚。2020年初只能找入职同一家公司的同学借钱生活,适逢疫情,所有的社会活动都被打乱。租房遇到恶邻,每天环境干扰无法做任何事情。大概抑郁了两个月,终于意识到自己的人生还要继续,开始想办法找工作。首先疫情期间城市里没有小区允许搬入,于是开动脑筋同小区换了房子创造便于复习和面试的房子。然后就开始了复习的生涯。到这个时候我并不清楚自己想做什么样的工作,看自己C语言比较熟,于是语言上就主选C++;由于上一家离开主要是工作量的心病,于是这次唯一的想法就是不加班。

首先是语言上的补足,在251全程使用C语言,本科从未透彻的学习过C++。因此花了时间补习了C++virtual编程,streamstlsmartptr。主要使用的就是《Effective C++》这本书,像其他的CPPrimer太厚了并且很多东西都不是重点。比如STL::MAP,面试官最多提问到它是使用红黑树实现的KV模型,更深的不会让你去插入一个节点,调整树,重新上色这种。虽然我复习会了,但是仔细想想这个问题提出来候选人和面试官不一定谁先吃鳖。Effective C++很好的一点就是面向C++工程使用的知识点,从C++出发向设计模式、底层实现等方面发散,非常适合面试,比如里面有一个“非本地全局变量初始化顺序未定义“的问题,使用工厂模式解决的,然后我就看懂了工厂模式的原理,再去看单例模式、策略模式等方法就很好理解。

然后就是刷题,主要使用Leetcode。说实话从没有刷过题的我是学计算机以来第一次刷题,使用C++刷题都让我忘了面试的目的,把解题当成有趣的事情了,因为刷题多了真的能发现题目是大同小异的,知识点总结起来有数论、递归下降、动态规划和一些数据结构,很少有题目超出这些。大部分题目都是这样的,见过就会做,没见过想破头也很难想出来。在这方面单拼脑力太吃亏了,所以我还是偷个懒背题>想题了。

然后就开始面经了,最开始处于不加班的想法主选外企大厂。巨硬笔试跪、牙膏厂1面跪,总结原因全都是当时还没怎么准备(在复习前夕),然后为了这两个错过了我很爱他他也很爱我的前农企主管邀请我去的higon面试,在打电话时表示因为当天我推脱了导致hc满了(才反应过来当时为什么hr火急火燎的邀我面试)。也就是说,处于不加班的目的首选外企,但是2020年的中国科技外企的普遍情况是:缩招,只有高职级有少量HC,应届基本不要;低薪,985本科水平待遇只有国内企业的2/3包括higon其实是对方比较认可我但是牙膏农企现在都是围城了,所以给我指了条明路。后面经历了二次元公司,五角场RTC框架公司(这家最奇葩后面说)通讯外企土味视频母公司,一家给优鲜卖冰柜的识别公司一家金融方面的公司(最后去的这家)由于比较杂,我就综合一下问题和回答了。

算法相关:

二次元公司:公寓里每住一个人要求左右不能住人,求一层的情况还能住多少人(就是只能010,不能011110111)这道题同巨硬:一个字符串有ab组成,不能出现bbb,求修改多少个字母能合法(就是把bbb->bab)解:两头添加0a)然后滑动一个size=3的窗口。

二叉树判断是否是镜像的(return isMIrror(root->left->right,root->right->left)&&isMirror(root->left->left,root->right->right);

手写一个链表排序算法:partition(list,begin,end);front_set.size>3?qsort(begin,front_set);qsort(back_set,end)

字典树:没写出来,应该有很多教程。股价波动:遍历记录最大最小值累加。

计算机基础:这里真的要吐槽一下,面试官的水平真的是千奇百怪,他们会从各种地方拿到莫名其妙的词汇,结果就是他问的我全都会,但是我听不懂他在问什么。。。。比如:土味母公司面试官问,操作系统的进程有几种状态?我:三种,运行就绪阻塞,他:嗯,就绪,阻塞,还有呢?不止这三种吧?我:如果细分的话就还有活动就绪和活动。。。他:嗯,还有呢,比如一个进程退出后的状态?我:请问您是不是在说僵尸,可中断不可中断,唤醒?那可能是task running, task interruptable,task uninterruptable,exit zombie,exit dead task traced。。。。。他:嗯对,一个进程退出后要变成僵尸,或者死亡,还有暂停。。。。至此我明白了,这位面试官的知识点本身就是从培训书上抄来的,众所周知linux task_struct8种状态,操作系统课本上的状态一般是3种或六种,但是task struct里没有状态叫blockready。。。。。他看的书估计是把这些东西揉在一起了,应付面试用的。于是后面的问题很多我就表示不会或者随便说一点,面试后联系hr直接cancel了。后面其他一些问题,tcp建立连接的过程?说了一下三次握手四次挥手,问为什么三次为什么四次?直说不会。我的确没想过做后台网管,然后这些相关的职位我也是面试完直接cancel掉了。还有一些是不太了解的公司,面试前先问了,的确是加班+oncall的,就很抱歉的表示放弃了。

最有意思的是五角场RTC公司,面试时考了版本比较,本来是道普通题目,但是我没刷到过,不会写,说atoi来做。面试官说:那我就要你实现atoi。我写代码的时候一边写一边说这个是库函数其实可以解决。然后三面的时候好事就来了:三位领导开始让你忏悔人生,问你过去的人生中最开心的,最难过的,最后悔的,最感动的事情是什么?我:感动啥?你们要评选感动中国十大人物?让候选人在你面前忏悔啥准备入教???咨询环节:请问贵司加班的情况是怎么样的?看到了其他人面经的说法:我们是高级的管理,低级的管理就像你上一家公司那样,流水线一样计工时加班,我们是高级的管理,员工主动延长工作时间。。。。。。。面试最后说了:你面试的时候跟技术官说了那个。。。。我了个大x,挂了电话果断cancel。这家公司还有更奇葩的,离职之后打电话拿竞业条款要挟离职人。注意,不是走正规途径,是在没有发竟业补偿的情况下,利用离职人不了解法,要挟离职人对下家辞职???竞业条款是指离职后公司发放每月30%待遇作为生活费给离职人执行竞业禁入。

最后说几个我觉得答的比较理想的吧:

经典问题,进程和线程的区别是什么?进程和线程的根本区别是程序计数器指针对应的虚地址空间,一组进程每个EIP指针有自己的虚地址空间,一组线程多个控制块对应同一个虚地址空间。在linux操作系统中控制块实现是task_struct,虚地址空间实现是mm_structLinux操作系统没有独立的线程数据结构,当一个线程分离出来,操作系统构造一个task_struct并使虚地址空间指针共享。性质上一个进程可以持有多个线程,一个线程可以创造线程,一个线程可以被取消,一个线程死亡导致整个进程死亡,一个进程死亡被其父节点回收,一个进程初始时可以视为单线程进程。进程被创建时操作系统复制整个进程的pcb,然后把进程控制块放入就绪队列的尾部,把进程符号插入进程树。进程只能由进程创建,操作系统启动时只有一个0boot进程,1号进程是0号进程分裂出来的主进程,每个用户tty的父进程都是1号进程,当tty执行执行forktty分裂出一个进程作为子进程,当子进程被分离父进程由1号进程托管,他变成了守护进程(精灵进程daemon

你刚才说到了系统调用,系统调用是什么?我:操作系统的任务是管理计算机的一切资源,因此分为用户程序和内核程序,用户程序试图访问计算机资源时,必须经由内核提供的入口进行访问,这些入口API就是抽象意义上的系统调用。在现代操作系统中,一个系统调用被定义,表示一个能够进行模式切换过程的函数由内核空间提供给用户空间,因此在系统调用表中创建调用号并注册自身,用户程序调用系统调用时计算机发生模式切换中断,查表找到调用号,切换代码段等各个栈帧指向操作系统高端先行内存区域执行内核代码,从而用户程序得以使用到操作系统管理的计算机资源。

下面这个问题是二次元公司一个面试官提的,上下文不记得了:你刚刚提到了系统调用,问下操作系统是怎么实现诸如printf等系统调用功能的?我:操作系统通过全局变量加锁管理这些资源。他:就是,你刚才说什么虚拟地址空间,那每个程序想调用系统调用,程序指针。。怎么指?(到这里我已经知道他大概想问什么了,只不过他自己也一知半解词穷了)我:请问是不是在问指向高端线性地址区域。。。?他:我就问你,内核态使用的虚地址空间是每个程序一个还是共用一个虚地址空间?我:???(惊了)虚拟地址空间是,,,怎么公用的?您是说共享内存吗?我不太理解您说什么,模式切换后程序指针指向操作系统全局变量的高端内存区域,具体说是全体内存地址的高位地址区域前1GB空间减去内核代码段。。。。然后跳过了。挂了电话后我久久不能平静,到底什么是共用一个虚拟地址空间。于是又捋了一边:现代操作系统使用分页管理内存,每个内存页通过多级映射的方式分配给应用程序,内存通过硬件访问的地址称为物理地址,内存进行分页管理,高位作为页号低位作为偏移量,这个地址称为逻辑地址,对于用户程序而言每个程序看到的地址空间都是整个内存的大小,每分配一些内存就通过多级映射将内存页号分配给程序页框。那对于内核程序呢?哦我明白了,他不明白逻辑地址和虚拟地址区别是啥,不知道内核态的地址叫什么地址,于是把用户的虚拟地址名字安在内核空间上了。

这些问题,说实话我面试的时候都不觉得面试官有错,因为人人都会忘,我也会忘。于是面试官和我理解的不一样,我只能礼貌的说不太理解,或者委婉的表达出自己知道的所有东西交给面试官判断。只不过,挂了电话查资料核实了自己的想法后,我的确会觉得体验很差,作为面试官你的知识点本就要有十足的把握,面向工程浅尝辄止当然可以,张冠李戴,不假思索胡说则是既不尊重面试本身也不尊重知识技术了。

最后再说一下我的选择吧,我的选择是工作量压力小,和我的技术栈对口的工作。最后拿到的offer是一个外企和一个金融公司,最后还是选了金融小公司,招聘做基础研究员(现在入职一小段时间了我还在怀疑自己的年龄和经验能不能当得起这个)。其实我第一次接电话是十分想拒绝的,因为没听过,感觉名字像随便取的,而且接电话是个台湾东南亚口音感觉是菠菜公司。。。。。。后面查了查这家公司来头还不小,在国内业界是排得上名的。虽然做技术不能为了金钱什么都干,但是他们给的实在是太多了,是外企的1.5倍啊,并且并没有我上一家的2人工作量模式,内容还是我喜欢的基础技术。。。。。有(kuai)(qian)(of)(fer)。不过我刚加入不久,还不能说自己喜欢或者不喜欢这里,还是像沉着下来把自己的本职任务做好,再看周围的环境。

另外我觉得我之前的想法有些问题:在2020年的中国,哪有什么养老公司?oraclecisco相继爆炸,不到四十也不会什么,原本外企年薪就低的要死,拿着二三十万补偿低着头去阿里巴巴学习带一线团队,重新学习语言,编译,devops,算法,框架,从955996,这是养老还是给自己埋雷?谁知道下一个会不会是被251干掉的牙膏巨硬?抑或是被higon国芯取代的农企?技术实力才是养老保险,任何一个年龄段,被大公司围城、螺丝钉化都会不可避免地迎来危机。同时面试是一个双向筛选的过程,如果你觉得面试的路数跟你不和(你认为浅尝辄止的部分面试官穷追不舍)那说明你的技术路线跟这份工作不是很匹配。中国的经济还没进入退行期,只要你想,有的是更适合你的工作。再有,遇到精神压力面的面试官一律把整个部门拉黑:压力面指的是技术压力面,不是精神压力面,指的是技术经理希望通过一些技术边缘问题了解候选人的上限水平,这样定各种东西的时候就能比较客观。如果面试官使用除了技术,使用副语言和一些不经意的话和行为给你压力,那直接拉黑这个部门完全不为过,不仅如此还要发牛客广而告之,这种事情是公司的管理出了问题,领导的领导有问题(@鹅肠p*g一个部门,在牛客上已经炸了好几个候选同学了,什么玩意啊恶心人来的吧),管理上出了问题,绝不是普通员工能承受的。最后,希望大家裸辞时谨慎再谨慎,最好无缝对接。裸辞真的是太可怕了,即便没有什么实际的问题,那种精神压力很难疏导。我24岁开年经历了裸辞,可能接下来几十年都不会这么干了。。。。。。

#面经##社招##C++工程师#
全部评论
&麻烦问下楼主复习操作系统用的什么资料,可以分享下吗,谢谢!
2 回复
分享
发布于 2020-04-07 09:56
裸辞有风险,需谨慎…
1 回复
分享
发布于 2020-04-11 18:47
联想
校招火热招聘中
官网直投
裸辞+1 矫情+1 任性+1 感悟和你一模一样 中国没有养老公司 养老保险的真正含义* 恭喜楼主找到满意的工作。。总归是去到了更好的地方,就开始从波谷走向波峰了~ 😎
3 回复
分享
发布于 2020-04-23 18:13
lz好厉害,251确实真的很有钱,但是有些领导真真太会恶心人了,,,
1 回复
分享
发布于 2020-04-05 15:35
请问下楼主,裸辞后失去应届身份,后续还有尝试校招吗?比如巨硬这种是直接boss上联系还是走的春招呢🤔。我也在考虑辞职
1 回复
分享
发布于 2021-11-08 15:58
&如果我记得没错,普通进程内存空间的顶端,有一部分是留出来的,是内核进程虚拟地址空间的一个映射,所有进程共享。
点赞 回复
分享
发布于 2020-04-05 04:05
&在251工作量多大
点赞 回复
分享
发布于 2020-04-05 12:18
&学长,可以私信请教一下哪个金融公司吗,我基本都是在互联网金融里面打转
点赞 回复
分享
发布于 2020-04-05 14:14
对楼主的id有点印象,是不是放弃了intel去的菊厂
点赞 回复
分享
发布于 2020-04-06 02:33
感谢分享! 欢迎大佬参加我们的社招面经征集活动呀!有京东卡可以拿~社招面经征集|参加过社招的牛友,来发面经吧,拿京东卡~:https://www.nowcoder.com/discuss/374207 #社招面经#
点赞 回复
分享
发布于 2020-04-07 18:16
牙膏是哪家啊。。。
点赞 回复
分享
发布于 2020-04-07 18:21
同济也算二流985吗~毕竟仅次于清北华五
点赞 回复
分享
发布于 2020-04-11 18:11
《格局》
点赞 回复
分享
发布于 2020-04-18 22:17
逻辑地址和虚拟地址区别都不懂还来面试别人???
点赞 回复
分享
发布于 2020-04-25 20:48
楼主。。。太强了吧,线程进程那块我都没听说过
点赞 回复
分享
发布于 2020-04-25 21:04
秋招找了工作,裸辞参加春招,已经20多天了,都是面试被拒、简历筛选被拒,越来越不自信。真是长教训了,希望能沾沾楼主的喜气,早日重新上岸。
点赞 回复
分享
发布于 2020-04-29 11:21
我感觉251离职率特别的高。尤其是第一年的
点赞 回复
分享
发布于 2020-04-30 14:25
想问下怎么找这些小公司或外企
点赞 回复
分享
发布于 2020-07-22 11:20

相关推荐

#中芯集成电路制造(绍兴)有限公司# #绍兴中芯# #芯联集成# #绍兴半导体# 中芯绍兴1. 学不到东西。培训是在公司部分找一群人,大家轮流按照PPT读一遍。PPT内容很多都好几年了,公司PPT模板都换几轮了。培训用的PPT还是老的。不过也不能怪培训的人不认真,自己工作loading很重了,还要被公司薅过来给新人讲课,没有任何补贴。有的人干几年水平也就那样,何况人家自己也想花太多心思在上面。讲个2,30分钟就溜了。极其极其少数有一些老员工给大家培训时候很认真,我就只遇到2,3次这样的,还会提问,给大家画原理图。这种人非常少的。2. 抠门的要命,把食堂承包给那种玩意儿,饭菜难吃,有很多上了年纪的本地绍兴大妈,卫生也差的要命。3. 倒霉点的遇到不好的老板,工作全退给手下的人,领导能力还一般。这种老板有不少。还有那种直属小leader,手下三俩人的那种。有一些特别爱使唤手下的人做跑腿的事情,没有一点技术含量,巴不得别人喂进嘴里。现在换了小leader,感觉好很多,但这种概率很小。4. 23年下半年及以后入职的研究生取消集电人才补贴(每年3万,发3年),只有房补和租赁补贴。除非是博士或者硕士干五年才给集电人才补贴。呵呵呵呵。政府穷或者扣了,连房补和租赁都拖着。5. 周一到周五至少有三天8点半以后下班。每个月基本最少有两个周六或周天整天在公司。要求周六周日排值班。差不多过着大小周的日子,但是据我所知,MEMS某些部门只让提报一天周末加班(周末加班费多一些),多加的周末算你白送公司了。毕竟最多只给36小时,每月送给公司20,30小时很常见。6.最后也是最重要的,hr是一群乱叫的狗,除了写在合同上基本薪资和竞业协议是真的(每个人都有竞业协议,pie pe ee)。其余什么6个月项目奖,什么总包30万,什么20%30 40的绩效全是假的。想不到会有人敢这么骗人吧?是的,这群hr就是敢不要脸,笃定注意大家有素质不会当面撕他脸皮。没签的快跑,签了的试试找找下家,但凡比这个好的,直接毁约。要不然;入职后你会发现那一个月的工资真是这辈子最值得花的钱。
投递中芯国际等公司8个岗位
点赞 评论 收藏
转发
34 137 评论
分享
牛客网
牛客企业服务